Intereting Posts
полезно ли использовать WordPress в том же расширении url с точки зрения seo? Как указать или расширить CSS-класс элемента меню? Изображения в реальном времени WordPress не отображаются Получите идентификационный номер Taxonmy для текущего сообщения Изменение роли пользователя после массового импорта Добавьте заголовок, сообщение и категорию, такие как add_post_meta и update_post_meta Страница виджета перестала загружаться Создание условий для персонализированной почты для сохранения данных? опубликовать конкретные пункты меню по двадцать шестнадцати темам содержимое плагина только на первой странице. Нигде более Показывать только определенные типы сообщений в виджетах последних сообщений Получить условия второго уровня пользовательской таксономии Несколько конечных точек в одном URL-адресе Показывать предупреждение, если плагин отсутствует WordPress (3.9.1) Разрешения MultiSite. Отвечает ли ответ?

Пользовательский тип сообщения, пользовательская таксономия, сообщения о запросах только из таксономии (дети)

У меня есть пользовательский тип сообщения (тип портфеля) с пользовательской иерархической таксономией (категория портфеля)

Теперь я хотел бы запросить только сообщения из potrfol-type, поэтому я делаю:

$paged = 1; if ( get_query_var('paged') ) $paged = get_query_var('paged'); if ( get_query_var('page') ) $paged = get_query_var('page'); query_posts( '&post_type=portfolio-type&paged=' . $paged ); 

И до сих пор все отлично работает. Теперь я хотел бы запросить только сообщения, которые есть в любом, о детях таксономии «категорий» категории пользовательской таксономии с данным идентификатором.

Поэтому я попробовал:

 $paged = 1; if ( get_query_var('paged') ) $paged = get_query_var('paged'); if ( get_query_var('page') ) $paged = get_query_var('page'); $query_args = array( 'post_type' => 'portfolio-type', 'cat' => $CAT_ID, 'paged' => $paged, ); query_posts( $query_args ); 

Не удалось (нет результатов), но я понимаю, почему. эти должности не входят в стандартную категорию, но в категорию пользовательской таксономии, поэтому, глядя на wp Codex, это то, с чем я пришел:

 $query_args = array( 'post_type' => 'portfolio-type', 'paged' => $paged, 'tax_query' => array( 'taxonomy' => 'portfolio-category', 'field' => 'id', 'terms' => $CAT_ID ) ); 

Сбой снова, но на этот раз все пользовательские сообщения из отображаемых post_type типов портфолио (tax_query не работает, независимо от того, какой идентификатор я ставлю, результат все равно)

Что мне не хватает?

Solutions Collecting From Web of "Пользовательский тип сообщения, пользовательская таксономия, сообщения о запросах только из таксономии (дети)"

Проблема заключалась в том, чтобы недостаточно внимательно прочитать документацию;)

Поскольку он находится в http://codex.wordpress.org/Class_Reference/WP_Query в разделе «tax_query», «tax_query принимает массив массивов аргументов налоговых запросов», поэтому правильная часть кода будет:

 $query_args = array( 'post_type' => 'portfolio-type', 'paged' => $paged, 'tax_query' => array( array( 'taxonomy' => 'portfolio-category', 'field' => 'id', 'terms' => $CAT_ID ) ), ); 

Недопустимый массив () в существующем массиве () был проблемой. Спасибо hakre :).