Запрос пользовательских записей по таксономии категории
1 апр. 2011 г., 13:55:42
Просмотры: 30.5K
Голосов: 8
Надеюсь, у вас всё хорошо,
Мой вопрос краткий: я пытаюсь сделать выборку из произвольного типа записей по определенной таксономии;
Для наглядности используем следующий пример:
Произвольный тип записи: 'Products';
Таксономия: 'Categories';
Категории внутри 'Categories':
(1) Category 1 (2) Category 2 (3) Category 3
Итак, я хочу получить записи из произвольного типа записей 'Products' и внутри 'Category 1'
Как это можно сделать?
Вот мой код для запроса произвольного типа записей и попытки запроса таксономии категории.
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$post_per_page = -1; // -1 показывает все записи
$do_not_show_stickies = 1; // 0 чтобы показать прикрепленные записи
$args=array(
'post_type' => 'products',
'taxonomy' => 'category-1',
'paged' => $paged,
'posts_per_page' => $post_per_page,
'order' => 'ASC',
);
$temp = $wp_query; // присваиваем оригинальный запрос временной переменной для последующего использования
$wp_query = null;
$wp_query = new WP_Query($args);
if( have_posts() ) : while ($wp_query->have_posts()) : $wp_query->the_post(); ?>

Xavier
477
Все ответы на вопрос
2
0
Существует 3 способа сделать это:
а)
...
'category_name' => 'category-1'
...
б)
...
'taxonomy' => 'category',
'term' => 'category-1',
...
в)
...
'tax_query' => array(
array( 'taxonomy' => 'category', 'field' => 'slug', 'terms' => array( 'category-1' ) )
)
...
Подробнее: http://codex.wordpress.org/Function_Reference/WP_Query

scribu
13.2K
1 апр. 2011 г. 14:12:58
0
Массив tax_query с таксономией, полем и терминами. Где terms->business является категорией таксономии taxonomy->job_category
$args = array(
'post_type' => 'featured_job', // Тип записи - рекомендуемая вакансия
'post_status' => 'publish', // Статус - опубликовано
'posts_per_page' => 9999999, // Количество записей на странице
'orderby' => 'date', // Сортировка по дате
'order' => 'DES', // Порядок сортировки - по убыванию
'tax_query' => array( // Запрос по таксономии
array(
'taxonomy' => 'job_category', // Название таксономии - категория вакансий
'field' => 'slug', // Поле для сопоставления - ярлык
'terms' => 'business', // Термин - бизнес
),
),
);

Alvic
41
1 нояб. 2019 г. 07:31:15
Похожие вопросы
5
ответов