Intereting Posts
Могу ли я использовать компоненты Symfony в плагине, который я хочу отправить в репозиторий плагинов WordPress? Почему WP_Query не работает с category_name? как получить значения db без использования цикла с помощью wpdb-> get_results () Неустранимая ошибка: вызов неопределенной функции get_header () Импорт базы данных mysql wordpress в неизвестный сервер / домен Как предотвратить макрос tinymce от вставки nbsp ;? Поиск использования памяти администратором Ограничить пользовательский гусеничный ход только передним концом автоматическое заполнение пользовательского nav со всеми элементами из пользовательского типа сообщения Откуда загружена эта страница администратора? Ошибка при использовании setup_postdata () Добавить пользовательское поле во все сообщения определенной категории Все страницы пусты добавление .current * тегов к пользовательским типам сообщений и таксономии Показать (распечатать) изображение всех размеров (высота, ширина)

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

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

$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 будет работать так, как предполагалось, без хаков, и ваша страница будет загружаться намного быстрее