Intereting Posts
Отклонить указатель администратора временно Как условно выводить на боковую панель каждого авторского архива и сообщений каждым автором? Большая база данных вызывает медленную нагрузку Невозможно загрузить пользовательский файл CSS в дочернюю тему Как использовать тот же адрес электронной почты для нескольких пользователей в Multisite версии 4.7 Сортировка WP_User_Query по значению meta_key с помощью pre_user_query Предотвратить добавление add_shortcode из тега Связанные таксономии по типам сообщений Загружайте медиафайлы на S3 без использования WP Uploader Изменить каталог загрузки на странице пользовательского плагина Как запрашивать пользовательские типы сообщений с несколькими ключами? Деактивированный плагин Visual Composer, сайт разбился, что делать? Доступ к плагинам для обычных пользователей не только администратор Объединение нескольких таблиц стилей в один условный блок у меня проблема при загрузке изображений в WordPress программно, проблема занимает слишком много времени и ломается ошибка времени exec

показывать персонализированные сообщения категорий из настраиваемого типа сообщений

Я пытаюсь показать сообщения из Custom Post Type (документы), которые имеют пользовательскую таксономию (тему) с двумя категориями, каждая страница категории должна иметь свои собственные сообщения. Но когда я открываю любую из этих категорий, я получаю все сообщения из этого настраиваемого типа сообщений.

Я создал файл taxonomy-subject.php с кодом ниже:

$args = array( 'post_type' => 'documents', 'posts_per_page' => 20 ); $terms = get_terms( 'subject', array ( 'hide_empty' => 0,) ); $loop = new WP_Query( $args, $term ); while ( $loop->have_posts() ) : $loop->the_post(); // content 

так где же проблема?

Вам нужно будет делать какие-либо пользовательские запросы на taxonomy-subject.php , просто используйте обычный цикл api . WordPress построит запрос для вас.

Что касается вашего вопроса:

 $args = array( 'post_type' => 'documents', 'posts_per_page' => 20, ); 

WP_Query не принимает второй аргумент в свой конструктор. Все его видение – это вышеприведенные аргументы. Вы запрашиваете WP_Query для 20 сообщений из типа сообщения документа. Это дает их вам. Если вы хотите получать сообщения с определенного термина, вам нужно сказать, что с параметром таксономии .

 $loop = new WP_Query(array( 'post_type' => 'documents', 'posts_per_page' => 20, 'tax_query' => array(array( 'taxonomy' => 'subject', 'terms' => get_queried_object_id(), )), )); 

get_queried_object_id должен вернуть идентификатор term в taxonomy-subject.php , вам нужно будет использовать какой-то другой код, если этот цикл используется в другом месте.