Облако тегов в WordPress в виде списка

В этом посте расскажу как сделать вывод тегов в wordpress списком, с одинаковым размерам шрифта.

Для этого потребуется немного модифицировать функцию вывода тегов wp_tag_cloud(), которая определяется в файлике wp-include/category-template.php.

По умолчанию массив с тегами задаётся следующим образом:

$defaults = array(  'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,  'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC',  'exclude' => '', 'include' => '', 'link' => 'view', 'taxonomy' => 'post_tag', 'echo' => true  );

При этом используются следующие параметры:
smallest — наименьший размер шрифта тега (число).
largest — наибольший размер шрифта тега (число).
unit — Единица измерения для smallest и largest. Например: pt, px, em, %; по умолчанию pt.(строка)
number — Количество выводимых тегов. (Используйте ‘0′ для вывода всех меток.) (целое)
format — Форматирование вывода облака тегов (строка).

  • «flat» (По умолчанию) разделяются пробелом
  • «list» теги заключаются в список UL с классом class=’wp-tag-cloud’
  • «array» теги возвращаются в виде массива для использования в PHP.

orderby — Сортировка тегов (строка).

  • «name» (По умолчанию) по имени
  • «count»

order — вывод (строка). В верхнем регистре:

  • «ASC» (По умолчанию)
  • «DESC»
  • «RAND» случайным образом.

exclude — список исключаемых тегов, разделенные запятой (строка).
Например, ‘exclude=1,30′ исключит метки с the term_id 1 или 30.
include — список включаемых тегов, разделенные запятой (строка).
Например, ‘include=5,20′ добавит метки с the term_id 5 или 20.

В итоге исправленный вариант должен выглядеть так:

$defaults = array(  'smallest' => 1, 'largest' => 1, 'unit' => 'em', 'number' => 0,  'format' => 'list', 'orderby' => 'name', 'order' => 'ASC',  'exclude' => '', 'include' => '', 'link' => 'view', 'taxonomy' => 'post_tag', 'echo' => true  );
This entry was posted in Старые посты. Bookmark the permalink.

6 Responses to Облако тегов в WordPress в виде списка

  1. Аноним says:

    А как еще добавить указание количества постов с этим тегом (как у категорий)?

  2. Аноним says:

    Добрый день!
    В файле wp-includes/category-template.php для вывода облака тегов у меня указаны стандартные настройки: сортировка по имени, по алфавиту

    function wp_tag_cloud( $args = '' ) {
    $defaults = array(
    'smallest' => 8, 'largest' => 14, 'unit' => 'pt', 'number' => 45,
    'format' => 'list', 'orderby' => 'name', 'order' => 'ASC',
    'exclude' => '', 'include' => '', 'link' => 'view'
    );

    Но сортируются по алфавиту только английские теги, а русские выстраиваются в каком-то не поддающимся логике порядке. Подскажите, в чем дело и как это исправить.

  3. Аноним says:

    А как можно вывести тэги в заданном порядке при использовании include?

  4. Аноним says:

    у вас много полезных статей, буду постоянным читателем!

  5. Аноним says:

    Всем привет

    Прекрасный сайт, замечательное оформление, спасибо автору сайта.

  6. DPolyakov says:

    попробую поискать решение

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>