wp_tag_cloud

Позволяет изменить вывод облака тегов
Хук WordPress
INT 2.3.0
WordPress Icon
Содержание
  1. Описание хука
  2. Примеры использования
  3. Фильтрование вывода облака тегов
  4. Изменение размеров шрифта тегов
  5. Установка количества возвращаемых тегов
  6. Форматирование вывода облака тегов
  7. Сортировка тегов по имени или количеству
  8. Изменение порядка сортировки тегов
  9. Включение или отключение фильтрации вывода
  10. Настройка отображения количества тегов
  11. Вопросы и ответы
  12. Как изменить размер шрифта тегов в облаке?
  13. Как изменить порядок сортировки тегов в облаке?
  14. Как изменить количество отображаемых тегов в облаке?
  15. Как изменить формат отображения тегов в облаке?
  16. Как изменить разделитель между тегами в облаке?
  17. Как отключить отображение количества тегов в облаке?
  18. Как изменить единицу измерения размера шрифта тегов в облаке?
  19. Как изменить текст для отображения количества тегов в облаке?
  20. Как изменить способ сортировки тегов в облаке?
  21. Связанные элементы

Описание хука

Хук wp_tag_cloud позволяет изменить вывод облака тегов.

Он вызывается в функции wp_tag_cloud() для фильтрации вывода облака тегов.

Хук wp_tag_cloud предоставляет возможность изменить или определить формат вывода облака тегов.

Данный хук является фильтром, что означает, что он позволяет изменить или заменить данные, передаваемые в функцию, и возвращаемые из нее.

Использование

apply_filters( 'wp_tag_cloud', string|string[] $return, array $args )

Хук wp_tag_cloud принимает два параметра:

  • $return (string|string[]) — Облако тегов в виде строки или массива, в зависимости от аргумента ‘format’.
  • $args (array) — Массив аргументов для генерации облака тегов. См. функцию wp_tag_cloud() для информации о принимаемых аргументах.
  • $return (string|string[]) — Облако тегов в виде строки или массива, в зависимости от аргумента ‘format’.
  • $args (array) — Массив аргументов для генерации облака тегов.
  • smallest (int) — Наименьший размер шрифта, используемый для отображения тегов. В паре с значением $unit определяет единицу измерения размера текста в CSS. По умолчанию 8 (pt).
  • largest (int) — Наибольший размер шрифта, используемый для отображения тегов. В паре с значением $unit определяет единицу измерения размера текста в CSS. По умолчанию 22 (pt).
  • unit (string) — Единица измерения размера текста в CSS, используемая с $smallest и $largest. Принимает любую допустимую единицу измерения размера текста в CSS. По умолчанию ‘pt’.
  • number (int) — Количество тегов для возврата. Принимает любое положительное целое число или 0 для возврата всех тегов. По умолчанию 0.
  • format (string) — Формат отображения облака тегов. Принимает значения ‘flat’ (теги разделены пробелами), ‘list’ (теги отображаются в неупорядоченном списке) или ‘array’ (возвращает массив). По умолчанию ‘flat’.
  • separator (string) — HTML или текст, разделяющий теги. По умолчанию «n» (новая строка).
  • orderby (string) — Значение для сортировки тегов. Принимает значения ‘name’ или ‘count’. По умолчанию ‘name’. Фильтр ‘tag_cloud_sort’ также может влиять на сортировку тегов.
  • order (string) — Порядок сортировки тегов. Принимает значения ‘ASC’ (по возрастанию), ‘DESC’ (по убыванию) или ‘RAND’ (случайный порядок). По умолчанию ‘ASC’.
  • filter (int|bool) — Включение или отключение фильтрации конечного вывода через ‘wp_generate_tag_cloud’. По умолчанию 1.
  • topic_count_text (array) — Переведенный множественный текст из функции _n_noop() для использования в подсчете тегов. По умолчанию null.
  • topic_count_text_callback (callable) — Callback-функция, используемая для генерации переведенного множественного текста для подсчета тегов на основе количества. По умолчанию null.
  • topic_count_scale_callback (callable) — Callback-функция, используемая для определения значения масштабирования количества тегов. По умолчанию default_topic_count_scale().
  • show_count (bool|int) — Отображение количества тегов. По умолчанию 0. Принимает 0, 1 или их логические эквиваленты.
<?php
/**
 * Пример использования хука wp_tag_cloud
 *
 * Выводит облако тегов с заданными параметрами.
 */
$args = array(
  'smallest'    => 8,
  'largest'     => 22,
  'unit'        => 'pt',
  'number'      => 10,
  'format'      => 'flat',
  'separator'   => ' ',
  'orderby'     => 'name',
  'order'       => 'ASC',
  'filter'      => 1,
  'topic_count_text'           => null,
  'topic_count_text_callback'  => null,
  'topic_count_scale_callback' => 'default_topic_count_scale',
  'show_count'  => 0
);
$tag_cloud = wp_tag_cloud( $args );
echo $tag_cloud;
?>

Примеры использования

Фильтрование вывода облака тегов


function my_custom_tag_cloud( $return, $args ) {
    // Ваш код для фильтрации вывода облака тегов
    return $return;
}
add_filter( 'wp_tag_cloud', 'my_custom_tag_cloud', 10, 2 );

В данном примере мы создаем функцию my_custom_tag_cloud, которая принимает два аргумента: $return (строка или массив с облаком тегов) и $args (массив с аргументами облака тегов). Внутри функции вы можете производить любые манипуляции с выводом облака тегов и возвращать измененный результат.

Изменение размеров шрифта тегов


function my_custom_tag_cloud_font_sizes( $args ) {
    $args['smallest'] = 10;
    $args['largest'] = 30;
    return $args;
}
add_filter( 'wp_tag_cloud_args', 'my_custom_tag_cloud_font_sizes' );

В данном примере мы создаем функцию my_custom_tag_cloud_font_sizes, которая изменяет размеры шрифта тегов. Мы устанавливаем значение $args['smallest'] равным 10 и $args['largest'] равным 30. Затем мы возвращаем измененный массив $args с помощью фильтра wp_tag_cloud_args.

Установка количества возвращаемых тегов


function my_custom_tag_cloud_count( $args ) {
    $args['number'] = 10;
    return $args;
}
add_filter( 'wp_tag_cloud_args', 'my_custom_tag_cloud_count' );

В данном примере мы создаем функцию my_custom_tag_cloud_count, которая устанавливает количество возвращаемых тегов равным 10. Мы изменяем значение $args['number'] и возвращаем измененный массив $args с помощью фильтра wp_tag_cloud_args.

Форматирование вывода облака тегов


function my_custom_tag_cloud_format( $args ) {
    $args['format'] = 'list';
    return $args;
}
add_filter( 'wp_tag_cloud_args', 'my_custom_tag_cloud_format' );

В данном примере мы создаем функцию my_custom_tag_cloud_format, которая устанавливает формат вывода облака тегов в виде списка. Мы изменяем значение $args['format'] на ‘list’ и возвращаем измененный массив $args с помощью фильтра wp_tag_cloud_args.

Сортировка тегов по имени или количеству


function my_custom_tag_cloud_orderby( $args ) {
    $args['orderby'] = 'count';
    return $args;
}
add_filter( 'wp_tag_cloud_args', 'my_custom_tag_cloud_orderby' );

В данном примере мы создаем функцию my_custom_tag_cloud_orderby, которая устанавливает сортировку тегов по количеству. Мы изменяем значение $args['orderby'] на ‘count’ и возвращаем измененный массив $args с помощью фильтра wp_tag_cloud_args.

Изменение порядка сортировки тегов


function my_custom_tag_cloud_order( $args ) {
    $args['order'] = 'DESC';
    return $args;
}
add_filter( 'wp_tag_cloud_args', 'my_custom_tag_cloud_order' );

В данном примере мы создаем функцию my_custom_tag_cloud_order, которая устанавливает порядок сортировки тегов в обратном направлении (от большего к меньшему). Мы изменяем значение $args['order'] на ‘DESC’ и возвращаем измененный массив $args с помощью фильтра wp_tag_cloud_args.

Включение или отключение фильтрации вывода


function my_custom_tag_cloud_filter( $args ) {
    $args['filter'] = false;
    return $args;
}
add_filter( 'wp_tag_cloud_args', 'my_custom_tag_cloud_filter' );

В данном примере мы создаем функцию my_custom_tag_cloud_filter, которая отключает фильтрацию вывода облака тегов. Мы изменяем значение $args['filter'] на false и возвращаем измененный массив $args с помощью фильтра wp_tag_cloud_args.

Настройка отображения количества тегов


function my_custom_tag_cloud_show_count( $args ) {
    $args['show_count'] = 1;
    return $args;
}
add_filter( 'wp_tag_cloud_args', 'my_custom_tag_cloud_show_count' );

В данном примере мы создаем функцию my_custom_tag_cloud_show_count, которая включает отображение количества тегов. Мы изменяем значение $args['show_count'] на 1 и возвращаем измененный массив $args с помощью фильтра wp_tag_cloud_args.

Вопросы и ответы

Как изменить размер шрифта тегов в облаке?

Для изменения размера шрифта тегов в облаке в WordPress используется параметр $smallest и $largest в функции wp_tag_cloud().

Параметр $smallest определяет минимальный размер шрифта тега, а параметр $largest — максимальный размер шрифта тега.

Например, чтобы установить минимальный размер шрифта 10pt и максимальный размер шрифта 20pt, необходимо использовать следующий код:


$args = array(
    'smallest' => 10,
    'largest' => 20
);
wp_tag_cloud($args);

Как изменить порядок сортировки тегов в облаке?

Для изменения порядка сортировки тегов в облаке в WordPress используется параметр $orderby в функции wp_tag_cloud().

Параметр $orderby определяет, по какому полю сортировать теги. Допустимые значения: ‘name’ (сортировка по имени тега) и ‘count’ (сортировка по количеству использований тега).

Например, чтобы отсортировать теги по имени в алфавитном порядке, необходимо использовать следующий код:


$args = array(
    'orderby' => 'name'
);
wp_tag_cloud($args);

Как изменить количество отображаемых тегов в облаке?

Для изменения количества отображаемых тегов в облаке в WordPress используется параметр $number в функции wp_tag_cloud().

Параметр $number определяет количество тегов, которые необходимо отобразить. Значение 0 означает, что нужно отобразить все теги.

Например, чтобы отобразить только 10 тегов, необходимо использовать следующий код:


$args = array(
    'number' => 10
);
wp_tag_cloud($args);

Как изменить формат отображения тегов в облаке?

Формат отображения тегов в облаке можно изменить с помощью аргумента ‘format’ при вызове функции wp_tag_cloud(). Данный аргумент принимает одно из трех значений: ‘flat’ (теги разделены пробелами), ‘list’ (теги отображаются в неупорядоченном списке) или ‘array’ (возвращается массив тегов).

Пример использования аргумента ‘format’ с значением ‘list’:


$args = array(
    'format' => 'list',
);
$tag_cloud = wp_tag_cloud( $args );

Как изменить разделитель между тегами в облаке?

Разделитель между тегами в облаке можно изменить с помощью аргумента ‘separator’ при вызове функции wp_tag_cloud(). Данный аргумент принимает любую строку в формате HTML или текста.

Пример использования аргумента ‘separator’ с разделителем в виде запятой:


$args = array(
    'separator' => ', ',
);
$tag_cloud = wp_tag_cloud( $args );

Как отключить отображение количества тегов в облаке?

Отображение количества тегов в облаке можно отключить с помощью аргумента ‘show_count’ при вызове функции wp_tag_cloud(). Данный аргумент принимает значение 0 для отключения отображения количества и значение 1 для его включения.

Пример использования аргумента ‘show_count’ для отключения отображения количества:


$args = array(
    'show_count' => 0,
);
$tag_cloud = wp_tag_cloud( $args );

Как изменить единицу измерения размера шрифта тегов в облаке?

Если вам необходимо изменить единицу измерения размера шрифта тегов в облаке, вы можете использовать аргумент $unit при вызове функции wp_tag_cloud(). По умолчанию, значение аргумента $unit равно ‘pt’.

Пример кода:


$args = array(
    'unit' => 'em',
);
$tag_cloud = wp_tag_cloud( $args );

Как изменить текст для отображения количества тегов в облаке?

Если вам необходимо изменить текст, отображаемый для количества тегов в облаке, вы можете использовать аргумент $topic_count_text при вызове функции wp_tag_cloud(). По умолчанию, значение аргумента $topic_count_text равно null.

Пример кода:


$args = array(
    'topic_count_text' => array(
        'singular' => 'Tagged %s time',
        'plural'   => 'Tagged %s times',
    ),
);
$tag_cloud = wp_tag_cloud( $args );

Как изменить способ сортировки тегов в облаке?

Если вам необходимо изменить способ сортировки тегов в облаке, вы можете использовать аргументы $orderby и $order при вызове функции wp_tag_cloud(). По умолчанию, значение аргумента $orderby равно ‘name’, а значение аргумента $order равно ‘ASC’.

Пример кода:


$args = array(
    'orderby' => 'count',
    'order'   => 'DESC',
);
$tag_cloud = wp_tag_cloud( $args );

Хук wp_tag_cloud позволяет фильтровать вывод облака тегов. Вы можете изменить единицу измерения размера шрифта тегов, текст для отображения количества тегов и способ сортировки тегов в облаке, используя соответствующие аргументы при вызове функции wp_tag_cloud().

Связанные элементы

  • Функция wp_generate_tag_cloud(): генерирует облако тегов на основе заданных аргументов.
  • Функция wp_tag_cloud(): выводит облако тегов на страницу.
  • Хук widget_tag_cloud_args: позволяет изменить аргументы виджета облака тегов.
  • Класс WP_Widget_Tag_Cloud: реализует виджет облака тегов.
Обсуждение