@AndreyBLG

Как вывести только уникальные метки WP?

Приветствую!
Подскажите как вывести только уникальные метки?
Метки выводятся на странице taxonomy-catalog.php в цикле:

$queired_obj = get_queried_object();
$term = $queired_obj->slug;

$args = array(
	'post_type' => 'mbds_products',
	'tax_query' => array(
		array(
			'taxonomy' => 'catalog',
			'field'    => 'slug',
			'terms'    => $term
		)
	)
);

$query = new WP_Query(  $args  );
while ( $query->have_posts() ) : $query->the_post();

   if( get_the_tag_list() ){
	   echo get_the_tag_list('<ul><li class="tags_li ">','</li><li>','</li></ul>');
   }

wp_reset_postdata();
endwhile;
wp_reset_query();


Получается если у нескольких записей есть одинаковые метки, цикл выводит их каждый раз.
Например в выборке 10 записей, 3 из которых имею метку "пластик" и 1 имеет метку "дерево".
Сейчас выводятся все метки так: пластик, пластик, пластик, дерево.
А нужно: пластик, дерево.

Спасибо.
  • Вопрос задан
  • 248 просмотров
Пригласить эксперта
Ответы на вопрос 1
maxxannik
@maxxannik
Сайты на WordPress + Интернет магазины WooCommerce
Так вы не через те методы решаете задачу.

Надо:
1. Сделать запрос постов (только массив ID) WP_Query
2. Сделать запрос меток (указав фильтром массив постов из п 1) WP_Term_Query

В все. Будет выдан списк меток которые покрывают заданное множество постов.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы