Есть шаблон поста для нескольких таксономий. Нужно в нём выводить только все посты таксономии текущего поста. Я думал как-то так
<ul class="list_unions">
<?php
$cats = get_terms(array('taxonomy' => 'union'));
foreach ($cats as $cat) {
$query = new WP_Query(array(
'post_type' => 'city',
'tax_query' => array(
array(
'taxonomy' => 'union',
'field' => 'term_id',
'terms' => $cat->term_id,
),
),
'posts_per_page' => -1,
'order' => 'ASC',
));
if ($query->have_posts()) { ?>
<?php while ($query->have_posts()) {
$query->the_post();
$termini = get_the_terms( get_the_ID(), 'union' );
if ($cat->term_id == $termini[0]->term_id) { ?>
<li>
<figure>
<?php the_post_thumbnail(); ?>
</figure>
<p><?php the_title(); ?></p>
</li>
<?php }
}
}
wp_reset_postdata();
}
?>
</ul>
Но при данной проверке, выводятся все посты, всех таксономий. А мне нужно только посты, согласно таксономии текущего поста. Как правильно написать эту проверку?