Получение записей по произвольному типу записи, таксономии и термину
Итак, у меня есть произвольный тип записи (Custom Post Type) под названием "Services". У этого типа записи есть таксономия под названием "Areas", которая содержит 5 терминов.
Допустим, у меня есть 10 записей в "Services", из которых 5 записей относятся к термину "Painting" и еще 5 к термину "Photography".
Мне нужно получить записи из "Services", но вместо отображения всех 10 записей показать только 5, связанных с "Painting".
На данный момент я могу делать запросы по таксономии и терминам, но это показывает все записи из "services" без фильтрации по термину.
По сути, нужно получить записи по post_type из выбранного термина.
Любая помощь будет очень полезна. Спасибо.
<ul id="service-list">
<?php
$args = array('tax_query' => array( array('taxonomy' => 'areas', 'field' => 'slug','terms' => 'painting')));
$the_query = new WP_Query( $args );
if($the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post();
?>
<li class="service">
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
</li><!-- /.service -->
<?php endwhile; else: ?>
<p>Ничего не найдено.</p>
<?php endif; wp_reset_postdata(); ?>
</ul><!-- #service-list -->
Если бы я мог просто указать в $args, из какого post_type получать записи, это решило бы проблему.
Это ответ на вопрос :)
<?php
$args = array(
'post_type'=> 'services', // тип записи - услуги
'areas' => 'painting', // область - покраска
'order' => 'ASC' // сортировка по возрастанию
);
$the_query = new WP_Query( $args );
if($the_query->have_posts() ) :
while ( $the_query->have_posts() ) :
$the_query->the_post();
// здесь будет контент
endwhile;
wp_reset_postdata(); // сброс данных запроса
else:
endif;
?>
