Хук Вордпресс: выводим облако меток (тегов) на сайте WordPress через шаблон без плагина и адаптируем способ отображения под себя.

В стандартном Вордпресс, чтобы вывести облако меток в сайдбар или подвал (футер), достаточно воспользоваться соответствующим боковым виджетом. Но, иногда данное решение не совсем подходит, так как в виджете будут выводиться все существующие метки As Is (с англ: как есть). Модернизируем и выведем метки напрямую через шаблон при помощи хука.

Представленная ниже функция отобразит по умолчанию:

1
<?php wp_tag_cloud( $args ); ?>

Аргументы параметра $args

Представленные ниже аргументы можно подставлять по своему усмотрению:

  • smallest — размер текста для меток с наименьшим количеством записей (по умолчанию 8 pt).
  • largest — размер текста для меток с наибольшим количеством записей (по умолчанию 22 pt).
  • unit — единицы измерения параметров smallest и largest. Может быть любым CSS типом размера: pt, px, em или % (по умолчанию pt).
  • number — максимальное кол-во меток, которое будет показано в облаке. Если установить 0, то будут показаны все метки без ограничения (по умолчанию 45).
  • format — отвечает за то, в каком формате будет выводиться список (по умолчанию flat).

format бывает 3 вида:

  1. flat — метки будут разделены разделителем, указанным в параметре separator.
  2. list — маркированный список (UL) список.
  3. array — возвращает облако меток в массиве для дальнейшей обработки в PHP.
  • separator — разделитель между метками (по умолчанию «\n»).
  • orderby — сортирует метки по имени name или count — кол-ву записей (по умолчанию name).
  • order — порядок сортировки. ASC — по порядку (1,2,3); DESC — в обратном порядке (3,2,1); RAND — хаотичный порядок (по умолчанию ASC).
  • exclude — исключаем определенные метки. Указывать нужно ID через запятую (по умолчанию null).
  • include — показываем только указанные метки. Указывать нужно ID через запятую (по умолчанию null).
  • topic_count_text_callback — функция, которая получает количество записей и возвращает текст для метки. Можно установить свою функцию, если нужно отображать какой-либо другой текст с количеством записей для каждой метки (по умолчанию default_topic_count_text).
  • show_count — отображать ли число записей в метке (рядом в скобках). По умолчанию 0. Может быть: 0, 1 или true/false.

Разберем рабочие примеры использования

Пример № 1:

В данном примере мы вывели метки маркированными списком в обратном порядке, задали max и min высоту шрифта в 12 pt, разрешили отображать количество записей в скобках.

1
<?php wp_tag_cloud('smallest=12&largest=12&show_count=1&format=list&order=DESC'); ?>

Как это выглядит можно посмотреть здесь (откроется в новом окне).

Пример № 2:

В этом примере мы ограничили кол-во меток до 50, изменили шрифт на 15 pt и 40 pt соответственно и отсортировали их по количеству записей.

1
<?php wp_tag_cloud('smallest=15&largest=40&number=50&orderby=count'); ?>

Обратите внимание как перечисляются параметры, значения и знак & между ними:

параметр=значение&параметр=значение

и так далее…

На этом в принципе весь разбор хука. Экспериментируйте под свои нужды. Успехов!

Возможно Вас заинтересует: