n-wp.ru — блог о WordPress

Как вывести теги только из определенной категории

При просмотре постов определенной категории интересно так же вывести и те теги, которые встречаются в этих постах. Например, если вы открыли категорию «Программы», то в ней будет выводится список тегов, которые присутствуют в постах только этой категории. Таким образом можно достигнуть большей детализации выборки, облегчить пользователям поиск нужной информации, сделать хорошую внутреннюю перелинковку.

Для формирования списка тегов, используемых в постах определенной категории, вставьте в файл functions.php код:

Эта функция проверяет посты определенной категории, и составляет список тегов, используемых в них. Теперь осталось только вывести этот список, задав ID категории:

Этот код нужно вставить в шаблон. 14 — это ID категории. Если нужно вываести список тегов из постов, принадлежащих нескольким категориям, то ID этих категорий нужно перечислить через запятую:

Вывод тегов постов определенной категории — отличная возможность сделать ваш блог интереснее и добавить в него хорошую внутреннюю перелинковку, способствующую лучшей индексации.

6 комментариев

  • Нужная штука. Только подскажи пожалуйста в каком месте задавать список категорий? Я в этом не особо понимаю еще.

    • Приведенный код выводит теги, используемые в постах определенной категории. То есть вставлять его нужно в шаблон, отвечающий за вывод постов определенной категории — index.php, archive.php и др.

  • Посмотрите пожалуйста мой сайт, я не пойму никак, два часа ковырял код, и не получилось, выводит, но не там. В functions.php вставил код, а дальше не врублюсь куда правильно влепить код:
    < ?php echo get_category_tags('14'); ?>
    Поразмышляв , подумал, что нужно в коде вывода тегов, прописать отдельно, чтоб определенная категория, брала определенные для неё теги, ток как это правильно написать не знаю,вот весь код, что выводит теги:

    Популярные темы
    < ?php //class="clouds_xsmall wp_tag_cloud('smallest=8&largest=22'); ?>

    Дайте пожалуйста пример написания на 1 категорию. К примеру рубрика «Своими руками» — айди 23.

    Вот я пробовал так-

    Популярные темы
    < ?php //class="clouds_xsmall wp_tag_cloud('smallest=8&largest=22'); ?>
    < ?php echo get_category_tags('23'); ?>

    Выводит в правильном месте, только во всех разделах ( и вместе со старыми, но то не проблема)

  • Автору 1000 поклонов. Нужно было как раз это, но пришлось малость попотеть, что бы запихать этот код в плагин WP-columns. Если кому нужно, то написал статью как это сделать http://sonax.name/?p=979

    P.S. Зарегистрировался на сайте, увидел, что Вы отключили в админке регистрирующимся слева все пункты, в том числе и пункт-раздел консоль. Написали бы статью как это сделать :)

  • Может поможете или направите по нужному урлу. Пытаюсь сделать то же самое но для вывода меток товаров плагина Woocommerce. Задача та же вывести метки всех товаров определенной категории.

  • К сожалению, приведенный пример в новой версии WP 3.9.1 не работает. Могли бы вы подсказать как правильно адаптировать его?