Сортировка по дате из произвольного поля WordPress

Стандартный функционал WP не позволяет сортировать по дате, если оно в произвольном поле. Лично я поступил так:

$events = get_posts($query); // получаем посты через запрос.
foreach ($events as $post ) {
    setup_postdata($post); //нужен, чтобы работали всякие the_titlt и тп.
    $event_start = get_post_meta(get_the_ID(), ‘mer_nastr_data’, true); // получаем дату
    $k = date("U", strtotime($event_start)); // переводим дату в формат компа
    $events_future_kk[] = $k; // в этом массиве храним id с датами в формате компа
    $events_future[$k][] = $post; //массив с будущими событиями
}
sort($events_future_kk); //сортируем массив
/* теперь как читать посты */
for ($x=0; $x<count($events_future_kk); $x++) {
    foreach ($events_future[$events_future_kk[$x]] as $post) {
        setup_postdata($post);
        /* сюда помещаем стандартный код для чтения<!—?php the_title();?—>*/
    }
}

 


2022-06-03 | | 0 комментариев | Кодинг | ,

Рейтинг:

Похожие записи

Почему mb_strimwidth лучше substr

Если загуглить "как обрезать в php обрезать строку по количеству символов", то вероятнее всего вы наткнётесь на рекомендацию использовать для этих целей функцию substr, однако,...

Кейс: Как создать фид для OZON в WooCommerce

При помощи плагина YML for Yandex Market можно создавать фиды не только для Яндекса, но и для других маркетплейсов. В этом кейсе разберём создание фида...

W3TC Page Cache мешает созданию фида (решение)

Эта инструкция актуальна для плагинов: YML for Yandex Market; XML for Google Merchant Center; XML for Avito. XML for Hotline; XML for O.Yandex (Яндекс Объявления);...

Добавить комментарий

Ваш адрес email не будет опубликован.