Попробуйте плагин Tag Groups, должен помочь
Спасибо за плагин, но, к сожалению, это не то что нужно. Во-первых там получается так, что одну метку можно поместить только в одну группу, а эта самая метка может быть у разных товаров из разных категорий, т.е. если пользователь перешел на одну и на другую категорию, необходимо чтобы метка выводилась если она есть хотя бы у одного товара из этой категории.
Ну и второе — это то, что плагин все равно выводит все метки на странице категории товара, хоть и разбивает это по группам = выносит на отдельные вкладки, а надо чтобы выводились только метки присущие товарам из данной категории.
Я как-то реализовывал подобный функционал на обычном информационном сайте, с помощью вот такого кода, найденного на просторах сети:
В файл functions.php вставляем:
function get_tags_in_cat($cat_id)
{
$posts = get_posts( array('category' => $cat_id, 'numberposts' => -1) );
$tags = array();
foreach($posts as $post)
{
$post_tags = get_the_tags($post->ID);
if( !empty($post_tags) )
foreach($post_tags as $tag)
$tags[$tag->term_id] = $tag->name;
}
asort($tags);
return $tags;
}
В шаблоне в том месте где необходимо вывести теги вставляем:
<?php
$cat_id = get_query_var('cat'); // получаем ID текущей категории
$tags = get_tags_in_cat($cat_id);
foreach($tags as $tag_id => $tag_name)
$tags_print[] = '<a href="' .get_tag_link($tag_id). '">' .$tag_name. '</a>';
echo implode(', ', $tags_print);
?>
Данный код подходит и работает только с обычными постами (записями), но вот как его адаптировать и применить для товаров Woocommerce у меня нет знаний, может кто сможет подсказать, как реализовать данную задачу???
-
Ответ изменён 4 года, 8 месяцев назад пользователем rocketz.
-
Ответ изменён 4 года, 8 месяцев назад пользователем Yui. Причина: для оформления кода есть кнопка code