Intereting Posts
Отключить обновления основного ядра WP, но отправить уведомление по электронной почте Правило перезаписи никогда не совпадало get_template_directory_uri () и другие теги URL, не работающие в теме Проблема при отображении соответствующих сообщений по конкретной таксономии в пользовательском типе сообщений Отключить новые сообщения с уведомлением пользователей Single_cat_title () печатает заголовок перед текстом Добавление поля только к одной странице Добавить пользовательский столбец в панель «Пользователи» с пользовательскими полями «Типы»? Синхронизировать комментарии между двумя установками WP Недопустимая ошибка смещения строки в текстовых вариантах wordpress textarea WordPress Walker – две группы? `authenticate` фильтр никогда не вызывается Переадресация в зависимости от выбранной категории Разница в человеческом времени в месяцах вместо дней. Как? WP_Terms_List_Table Быстрое редактирование не работает

Пользовательский тип сообщения Тип Дисплей

Я смотрел на эту старую тему. Затем я создал файл шаблона, называемый таксономическим файлом шаблона и типами сообщений. При запросе показывать только сообщения в выбранной категории. Это верхняя часть моего шаблона:

$args=array ( 'post_type'=> array( 'events' ), 'tax_query' => array( 'taxonomy' => 'tax-cat' ), 'post_status' => array( 'future' ), 'pagination' => true, 'paged' => $paged, 'orderby' => 'post_date', 'order' => 'ASC', ); $temp = $wp_query; $wp_query = null; $wp_query = new WP_Query(); $wp_query->query( $args ); 

Что из ive взято из существующего шаблона страницы, но выше, как представляется, отображает ВСЕ записи в настраиваемом типе сообщений, а не только сообщения в категории.

Solutions Collecting From Web of "Пользовательский тип сообщения Тип Дисплей"

Проблема заключается не в том, что вы никогда не укажете, какое событие cat в вашем запросе, но что вы делаете запрос вообще.

Если вы хотите изменить основной запрос, измените запрос, не добавляйте второй запрос. Мы делаем это через фильтр pre_get_posts :

Этот hook вызывается после создания объекта переменной запроса, но до запуска фактического запроса.

Действие pre_get_posts предоставляет разработчикам доступ к объекту $ query по ссылке (любые изменения, внесенные вами в $ query, производятся непосредственно в исходный объект – не требуется возвращать значение).

Например:

 function my_home_category( $query ) { if ( $query->is_home() && $query->is_main_query() ) { $query->set( 'cat', '123' ); } } add_action( 'pre_get_posts', 'my_home_category' ); 

В вашем случае вы хотите использовать фильтр:

  • только если это основной запрос
  • только если это архив
  • и этот архив предназначен для категории событий
  • установить статус должности в future не publish
  • и изменить порядок от DESC TO ASC

Поскольку текущий запрошенный срок и т. Д. Уже установлен, вам понадобится проверка, аналогичная этому:

 function randomer11_fix_eventcat_archive( \WP_Query $q ) { if ( $q->is_main_query() && $q->is_archive() && $q->is_tax( 'eventcat' ) ) { $q->set( ... ); // set your options } } add_action( 'pre_get_posts', 'randomer11_fix_eventcat_archive' ); 

Вы можете вызывать set столько раз, сколько хотите, и теперь в своем шаблоне вы можете удалить свой запрос и использовать обычный цикл сообщений. Pagination будет работать так, как предполагалось, без хаков, и ваша страница будет загружаться намного быстрее