Создал custom_post_type (programs) и таксономию (genretax). Теперь хочу вывести на странице archive-programs.php записи в зависимости от указаной для них таксономии.
В верстке используется библиотека MixItUp 3 (для вильтра плиток)
https://www.kunkalabs.com/mixitup/ Сейчас выводится так:
А проблема собственно в следующем:
если я укажу для одного поста несколько названий из таксономии ( например, живописные полеты и хелиски) и для другого поста укажу также в таксономиях живописные полеты и хелиски, то при фильтрации (когда выбрать хелиски) постов не находит. Тоесть когда каждому посту задать разное название таксономии, то все верно, а если одинаковые, то выводит первый пост.. Например,
1. Пост "НЕДЕЛЯ ХЕЛИ-СКИ В ВИСТЛЕРЕ" -> таксономия "Живописные полеты";
2. Пост "7 Дней приключений на Гавайях" -> таксономия "Живописные полеты"
и таксономия "Индивидуальный тур";
То в таком случае, при клике на таксономию "Живописные полеты" выведет пост 1 и 2, а при клике на таксономию
"Индивидуальный тур" не выведет ничего.
Код вывода таксономии:
<ul class="programs_list dark_icon_programs">
<?php $terms = get_terms('genretax');
foreach($terms as $term){ ?>
<li class="filter" data-filter=".category<?php echo $term->term_id; ?>"><?php echo $term->name; ?></li>
<?php } ?>
</ul>
Код вывода произвольного типа записи:
<ul class="list_right_col_item_programs img_width">
<?php
$args = array(
'post_type' => 'programs',
);
$query = new WP_Query( $args );
if ($query->have_posts()) {
while ( $query->have_posts() ) : $query->the_post(); ?>
<li class="mix category<?php $terms = get_the_terms( $post->ID, 'genretax' );
if( $terms ){
$term = array_shift( $terms );
echo $term->term_id;
} ?>">
<a href="<?php the_permalink(); ?>" class="img_col_item_programs">
<?php echo get_the_post_thumbnail(get_the_ID()); ?>
</a>
<a href="<?php the_permalink(); ?>" class="link_col_item_programs"><?php the_title(); ?></a>
</li>
<?php endwhile;
}
wp_reset_postdata(); ?>
</ul>
Помогите пожалуйста, никак не выходит разобраться..