Изучаем теги шаблонов: часть вторая

Изучаем теги шаблонов: часть первая
Изучаем теги шаблонов: часть вторая
Изучаем теги шаблонов: часть третья
Изучаем теги шаблонов: часть четвертая
Изучаем теги шаблонов: часть пятая
Изучаем теги шаблонов: часть шестая

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

Содержание

Получаем описание рубрики: category_description()

Тег шаблона возвращает описание текущей (указанной) рубрики.

Параметры

Этот тег шаблона принимает лишь один параметр:

  • $category_ID (integer, необязательный): ID рубрики. По умолчанию: запрашиваемая рубрика.

Применение

<?php 
$cat_desc = get_category_description( 15 );
?>

Получаем описание тега: tag_description()

Возвращает описание тега.

Параметры

Этот тег шаблона принимает лишь один параметр:

  • $tag_ID (integer, необязательный): ID тега. По умолчанию: текущий тег.

Применение

<?php
// Выводим описание текущего тега.
echo tag_description();

// Получаем описание определенного тега.
$special_tag_desc = tag_description( 42 );
?>

Получаем описание элемента таксономии: term_description()

Тег возвращает описание элемента таксономии (метки, категории и другое).

Параметры

Этот тег шаблона принимает два параметра:

  • $term_ID (integer, необязательный): ID метки. По умолчанию: описание текущего элемента;
  • $taxonomy (sting, необязательный): Название таксономии. По умолчанию: ‘post_tag‘.

Применение

<?php
// Выводим описание текущей метки. 
echo term_description();

// Получаем описание конкретной метки из определенной таксономии. 
$special_term_desc = term_description( 14, 'laptop_inches' );
?>

Получаем и выводим заголовок страницы для категорий архивов: single_cat_title()

Тег выводит и возвращает имя категории текущей страницы.

Параметры

Этот тег шаблона принимает два параметра:

  • $prefix (sting, необязательный): Что должно отображаться перед заголовком. По умолчанию: ‘ ‘;
  • $echo (bool, необязательный): Вывести имя категории (TRUE) или вернуть (FALSE). По умолчанию: TRUE.

Применение

<?php
// Выводим заголовок рубрики с приставкой. 
single_cat_title( 'Рубрики: ' );

// Получаем заголовок рубрики. 
$cat_title = single_cat_title( ' ', false );
?>

Получаем и выводим заголовок страницы архива тегов: single_tag_title()

Тег шаблона получает и выводит заголовок тега для последующего использования в заголовках страниц.

Параметры

Этот тег шаблона принимает два параметра:

  • $prefix (sting, необязательный): текст, выводимый перед заголовком. По умолчанию: ‘ ‘;
  • $echo (опционально – логическое значение): Вывести заголовок (TRUE) или получить (FALSE). По умолчанию: TRUE.

Применение

<?php
// Выводим заголовок тега с приставкой. 
single_tag_title( 'Архив тегов: ' );

// Получаем заголовок тега. 
$tag_title = single_tag_title( '', false );
?>

Получаем и выводим заголовок страницы архива меток: single_term_title()

Тег шаблона получает и возвращает заголовок таксономии текущего поста.

Параметры

Этот тег шаблона принимает два параметра:

  • $prefix (integer, необязательный): текст перед заголовком. По умолчанию: ‘ ‘;
  • $echo (bool, необязательный): Вывести заголовок (TRUE) или вернуть (FALSE). По умолчанию: TRUE.

Применение

<?php
// Вывести заголовок метки с приставкой. 
single_term_title( 'Архив меток: ' );

// Получаем заголовок метки.
$term_title = single_term_title( '', false );
?>

Получаем и выводим категории записи: get_the_category_list() и the_category()

Теги извлекают и выводят категории записи.

Параметры

Оба тега шаблонов принимают три параметра:

  • $separator (sting, необязательный): разделитель между категориями. По умолчанию: ‘ ‘. Если этот параметр не установлен, то категории будут выводиться в виде неупорядоченного списка;
  • $parents (sting, необязательный): Как вывести родительские категории (‘multiple‘, ‘single‘ или ‘ ‘.). По умолчанию: ‘ ‘;
  • $post_ID (integer, необязательный): ID записи. По умолчанию: текущая запись.

Применение

<?php
// Получаем неупорядоченный список категорий текущей записи.
get_the_category_list();

// Выводим категории текущей записи, разделенные запятыми и с родительскими категориями (если есть).
the_category( ', ', 'multiple' );
?>

Получаем и выводим категории записей для рассылки: get_the_category_rss() и the_category_rss()

Теги позволяют получить все записи категории, отформатированные для вывода в RSS.

Параметры

Оба тега шаблонов принимают лишь один параметр:

  • $feed_type (sting, необязательный): Тип рассылки. По умолчанию: тип рассылки по умолчанию.

Применение

<?php
// Получаем контент из категорий для рассылки в стандартном формате.
get_the_category_rss();

// Выводим контент категорий для рассылки типа atom.
the_category_rss( 'atom' );
?>

Получаем и выводим теги к записи: get_the_tag_list() и the_tags()

Возвращают и выводят все теги, связанные с указанной записью.

Параметры

Оба тега шаблона принимают по три параметра.

  • $before (sting, необязательный): Текст или HTML-код, который отображается перед выводом. Значение по умолчанию: ‘ ‘ для get_the_tag_list() и ‘Tags: ‘ для the_tags();
  • $sep (sting, необязательный): Текст, который будет использоваться в качестве разделителя. Значение по умолчанию: ‘ ‘ для get_the_tag_list() и ‘, ‘ для the_tags();
  • $after (sting, необязательный): Текст или HTML-код, который отображается после вывода. По умолчанию: ‘ ‘.

Применение

<?php
// Получаем простой список ссылок для тегов.
get_the_tag_list();

// Выводим теги с произвольными параметрами.
the_tags( '<div class="mytheme-tags">' . __( 'Tags: ', 'translation-domain' ) , ' &middot; ', '</div>' );
?>

Получаем и выводим метки записи: get_the_term_list() и the_terms()

Теги получают и выводят список терминов таксономии, относящихся к определенному посту.

Параметры

Оба тега шаблонов принимают 5 параметров:

  • $post_ID (sting, необязательный): ID записи. По умолчанию: текущая запись;
  • $taxonomy (sting, обязательный): Таксономия, для которой нужно получить список терминов. По умолчанию:‘ ‘;
  • $before (sting, необязательный): Текст или HTML-код, который отображается перед выводом. По умолчанию: ‘ ‘;
  • $sep (sting, необязательный): Разделитель терминов таксономий. По умолчанию: ‘, ‘;
  • $after (sting, необязательный): Текст или HTML-код, который отображается после вывода. По умолчанию: ‘ ‘.

Применение

<?php
// Получаем метки текущей записи из таксономии "Available Brands".
get_the_term_list( $post->ID, 'available-brands' );

// Выводим метки текущей записи из таксономии "Available Brands" с произвольным оформлением.
the_terms( $post->ID, 'available-brands', __( 'Доступные бренды: ', 'translation-domain' ), ' - ' );

?>

Выводим таксономии записи: the_taxonomies()

Тег выводит таксономии записи и доступные опции.

Параметры

Этот тег шаблона принимает лишь один параметр:

  • $args (array, необязательный): Массив включает в себя следующие аргументы:

— ‘post‘ (integer): ID записи. По умолчанию: 0.
— ‘before‘ (sting, необязательный): HTML-код, который добавляется до вывода. По умолчанию: ‘ ‘.
— ‘sep‘ (sting): разделитель. По умолчанию: ‘ ‘.
— ‘after‘ (sting): HTML-код, который добавляется после вывода. По умолчанию: пусто‘ ‘.
— ‘template‘ (sting): Шаблон вывода списка.
По умолчанию: ‘%s: %l.’ где %s – это метка таксономии, а %l – список ссылок.

Применение

<?php
$args = array(
    'before' => '<div class="taxonomies">',
    'sep'    => ', ',
    'after'  => '</div>'
);

the_taxonomies( $args );
?>

Получаем и выводим ссылку «изменить тег»: get_edit_tag_link() и edit_tag_link()

Эти теги получают или выводят ссылку «изменить тег», которую можно использовать в шаблонах.

Параметры

get_edit_tag_link() принимает два параметра:

  • $tag_ID (integer, обязательный): ID тег. По умолчанию: NULL;
  • $taxonomy (sting, необязательный): Тип таксономии. По умолчанию: ‘post_tag‘.

и edit_tag_link() принимает четыре параметра:

  • $link (sting, необязательный): Текст для ссылки. По умолчанию: ‘Edit This‘;
  • $before (sting, необязательный): Текст или HTML-код, который отображается перед выводом. По умолчанию: ‘ ‘;
  • $after (sting, необязательный): Текст или HTML-код, который отображается после вывода. По умолчанию: ‘ ‘;
  • $tag (object, необязательный): Объект тега. По умолчанию: NULL.

Применение

<?php
// Получаем ссылку «изменить тег» для текущего тега. 
$edit_tag_link = get_edit_tag_link();

// Получаем ссылку «изменить метку» для определенной метки.
$edit_tag_link = get_edit_tag_link( 4, 'keyboard-brand' );

// Выводим ссылку «изменить тег» для текущего тега.
edit_tag_link( __( 'Edit', 'translation-domain' ), '<strong>', '</strong>' );

// Выводим ссылку «изменить метку» для определенной метки.
edit_tag_link( __( 'Изменить', 'translation-domain' ), ' ', ' ', 11 );
?>

Получаем и выводим список категорий: wp_list_categories()

Тег получает и выводит список категорий в виде ссылок.

Параметры

Этот тег принимает лишь один параметр:

  • $args (array, необязательный): Массив включает в себя следующие элементы:

— ‘show_option_all‘ (string): Показывает ссылку на главную страницу (или на “Страницу записей”, выставленную в разделе Настройки > Чтение), если выставлено не пустое значение. Значение будет анкорным текстом ссылки. По умолчанию: ‘ ‘;
— ‘show_option_none‘ (string): Текст, который будет отображаться при отсутствии рубрик. По умолчанию: ‘Нет рубрик‘;
— ‘orderby‘ (string): Метод сортировки рубрик. Принимает значения ‘name‘, ‘ID‘, ‘slug‘, ‘count‘ и ‘term_group‘. По умолчанию: ‘name‘;
— ‘order‘ (string): Сортировать элементы по возрастанию (‘ASC‘) или по убыванию (‘DESC‘). По умолчанию: ‘ASC‘;
— ‘style‘ (sting): Стиль отображения рубрик—’list‘ генерирует неупорядоченный список ссылок, ‘none‘ генерирует список ссылок, разделенных тегом <br />. По умолчанию: ‘list‘;
— ‘show_count‘ (integer): Показывает количество записей рядом с каждой рубрикой. По умолчанию: 0;
— ‘hide_empty‘ (integer): Скрывать пустые рубрики или нет. По умолчанию: 1;
— ‘use_desc_for_title‘ (integer): Использовать описания в качестве атрибута title для ссылки. По умолчанию: 1;
— ‘child_of‘ (integer): Отображение только дочерних элементов из категории указанного ID. По умолчанию: 0;
— ‘feed‘ (string): Если используется не пустое значение, рядом с каждой категорией будет отображаться ссылка на рассылку. Значение будет использоваться в качестве анкорного текста ссылок. По умолчанию: ‘ ‘;
— ‘feed_type‘ (string): Тип рассылки (‘rss‘, ‘rss2‘, ‘atom‘ или ‘rdf‘). По умолчанию: ‘ ‘;
— ‘feed_image‘ (string): Путь к изображению, которое будет использоваться вместо анкорного текста ссылки на рассылку. По умолчанию: ‘ ‘;
— ‘exclude‘ (string): ID рубрик через запятую, которые нужно исключить из списка. По умолчанию: ‘ ‘;
— ‘exclude_tree‘ (string): То же, что «exclude«, но этот параметр используется, если аргумент hierarchical выставлен на 1. По умолчанию: ‘ ‘;
— ‘current_category‘ (integer): Добавляет класс «current-cat«, если это нужно. По умолчанию: 0;
— ‘hierarchical‘ (integer): Отображение элементов в иерархическом формате. По умолчанию: 1;
— ‘title_li‘ (string): Обрамляет результат тегом <li> и выводит заголовок перед списком рубрик. По умолчанию: ‘Категории‘;
— ‘echo‘ (integer): Выводить результат (1) или возвращать его (0). По умолчанию: 1;
— ‘depth‘ (integer): Максимальная глубина иерархии. По умолчанию: 0;
— ‘taxonomy‘ (string): Таксономия для списка. По умолчанию: ‘category‘.

Применение

<?php
$args = array(

    // Показываем ссылку "Все записи".
    'show_option_all' => __( 'Все записи', 'translation-domain' ),

    // Сортировка по номеру записи.
    'orderby' => 'count',

    // Показывать номера записей.
    'show_count' => 1,

    // Показывать ссылки на рассылки.
    'feed' => 'Feed',

    // Удаление title_li.
    'title_li' => ''
);

wp_list_categories( $args );
?>

Получаем и выводим выпадающий HTML-список категорий: wp_dropdown_categories()

Тег получает и выводит выпадающий список (элемент <select>), состоящий из наименований категорий.

Параметры

Этот тег шаблона принимает лишь один параметр:

  • $args (array, необязательный): Массив включает в себя следующие элементы:

— ‘show_option_all‘ (string): Текст для отображения во всех категориях. По умолчанию: ‘ ‘;
— ‘show_option_none‘ (string): Текст, который отображается при отсутствии категорий. По умолчанию: ‘ ‘;
— ‘option_none_value‘ (смешанное значение): Значение, которое используется при отсутствии выбранных категорий. По умолчанию: -1;
— ‘orderby‘ (string): сортировка выводимых категорий по определенным критериям. По умолчанию: ‘ID‘;
— ‘order‘ (string): направление сортировки (по возрастанию или убыванию). По умолчанию: ‘ASC‘;
— ‘show_count‘ (bool или integer): Показывать или нет количество записей в категории. По умолчанию: 0;
— ‘hide_empty‘ (bool или integer): показывать или нет категории без записи. По умолчанию: 1;
— ‘child_of‘ (integer): Показывать или нет все дочерние категории. По умолчанию: 0;
— ‘exclude‘ (string): Список разделенных запятыми ID категорий, которые нужно исключить из списка. По умолчанию: ‘ ‘;
— ‘echo‘ (bool или integer): Выводить или извлекать контент. По умолчанию: 1;
— ‘depth‘ (integer): Максимальная глубина вложенности. По умолчанию: 0;
— ‘tab_index‘ (integer): значение атрибута tabindex для элемента SELECT. По умолчанию: 0;
— ‘name‘ (string): Значение атрибута NAME для элемента SELECT. По умолчанию: ‘cat‘;
— ‘id‘ (string): значение атрибута ID элемента SELECT. По умолчанию: пусто;
— ‘class‘ (string): CSS-класс для элемента SELECT. По умолчанию: ‘postform‘;
— ‘selected‘ (integer): ID категории, которая должна быть выбрана по умолчанию. По умолчанию: 0;
— ‘taxonomy‘ (string): название таксономии для вывода. По умолчанию: ‘category‘.

Применение

<?php
$args = array(
    'show_option_none' => __( 'Ничего не найдено', 'translation-domain' ),
    'orderby' => 'title',
    'show_count' => 1,
    'echo' => 0,
    'name' => __( 'brands', 'translation-domain' ),
    'taxonomy' => __( 'available-brands', 'translation-domain' )
);

$brands_dropdown = wp_categories_dropdown( $args );
?>

Получаем и выводим облако тегов: wp_tag_cloud()

Тег получает или выводит облако тегов, сгенерированное из указанной таксономии (по умолчанию: из тегов).

Параметры

Этот тег шаблона принимает лишь один параметр:

  • $args (array, необязательный):

Массив включает в себя следующие аргументы:
— ‘smallest‘ (integer): Самый мелкий размер шрифта. По умолчанию: 8;
— ‘largest‘ (integer): Самый крупный размер шрифта. По умолчанию: 22;
— ‘unit‘ (string): Единица изменения размера текста. По умолчанию: ‘pt‘;
— ‘number‘ (string): Максимальное количество тегов для отображения. По умолчанию: 45;
— ‘format‘ (string): Как отображать список тегов: ‘flat‘ – элементы разделяются пробелом, ‘list‘ – неупорядоченный HTML-список, и ‘array‘ – в виде PHP-массива. По умолчанию: ‘flat‘;
— ‘separator‘ (string): Текст разделителя. По умолчанию: «n«;
— ‘orderby‘ (string): Критерии сортировки тегов (‘name‘ или ‘count‘). По умолчанию: ‘name‘;
— ‘order‘ (string): Сортировать элементы по возрастанию (‘ASC‘) или по убыванию (‘DESC‘) порядке. По умолчанию: ‘ASC‘;
— ‘include‘ (array): Массив из ID, которые следует включить в выдачу. По умолчанию: ‘ ‘;
— ‘exclude‘ (array): Массив из ID, которые следует исключить из выдачи. По умолчанию: ‘ ‘;
— ‘taxonomy‘ (string): Таксономия, из которой будет построено облако. По умолчанию: ‘post_tag‘;
— ‘link‘ (string): Результат нажатия на ссылку ‘view‘ для просмотра ‘edit‘ для редактирования ссылок. Работает с аргументом ‘post_type‘. По умолчанию: ‘view‘;
— ‘post_type‘ (string): Если аргумент ‘link‘ выставлен на ‘edit‘, то вам нужно указать ‘post_type‘, чтобы определить, какие типы записей будут в списке “редактировать ссылки”. По умолчанию: пусто;
— ‘echo‘ (boolean): вывести облако на экран или возвращать значение для дальнейшей обработки. По умолчанию: TRUE.

Применение

<?php
$args = array(

    // Самый мелкий и крупный размер шрифта.
    'smallest' => 10,
    'largest'  => 32,

    // Получать только 20 тегов.
    'number' => 20,

    // Сортировать по популярности.
    'orderby' => 'count',

    // Произвольная таксономия.
    'taxonomy' => 'brands',

    // Вместо отображения вернуть выдачу.
    'echo' => 0
);

$tag_cloud = wp_tag_cloud( $args );
?>

Получаем произвольно сгенерированное облако тегов: wp_generate_tag_cloud()

Возвращает HTML строку со сформированным «облаком тегов».

Параметры

Тег принимает два параметра:

  • $tags (array, обязательный): Массив со списком тегов. По умолчанию: NULL;
  • $args (array, обязательный): Массив содержит следующие элементы:

— ‘smallest‘ (integer): Самый мелкий размер шрифта. По умолчанию: 8;
— ‘largest‘ (integer): Самый крупный размер шрифта. По умолчанию: 22;
— ‘unit‘ (string): Единица изменения размера текста. По умолчанию: ‘pt‘;
— ‘number‘ (string): Сколько тегов выводить. По умолчанию: 0;
— ‘format‘ (string): Как отображать список тегов: ‘flat‘ – элементы разделяются пробелом, ‘list‘ – неупорядоченный HTML-список, и ‘array‘ – в виде PHP-массива. По умолчанию: ‘flat‘;
— ‘separator‘ (string): Текст разделителя. По умолчанию: «n«;
— ‘orderby‘ (string): По каким критериям сортировать теги (‘name‘ или ‘count‘). По умолчанию: ‘name‘;
— ‘order‘ (string): Сортировать элементы по возрастанию (‘ASC‘) или по убыванию (‘DESC‘). По умолчанию: ‘ASC‘;
— ‘topic_count_text‘ (string): Текст всплывающей подсказки для ссылки, привязанной к тегу. По умолчанию: NULL;
— ‘topic_count_text_callback‘ (string): callback-функция, которая получает количество записей с использованием этого тега, и отображает его в подсказке к ссылке, привязанной к тегу. По умолчанию: NULL;
— ‘topic_count_scale_callback‘ (string): callback-функция, которая работает с аргументами ‘smallest‘ и ‘largest’ и высчитает размеры шрифта для тегов в зависимости от количества упоминаний. По умолчанию: ‘default_topic_count_scale‘;
— ‘filter‘ (integer): если этот параметр выставлен на 0, функция не применяет фильтр с таким же названием (‘wp_generate_tag_cloud‘). По умолчанию: 1.

Применение

<?php
// Получаем массив с тегами для текущей записи.
$tags = get_the_tags( ' ', ', ', ' ' );

// Выставляем аргументы.
$args = array(
    'smallest' => 10,
    'largest'  => 36,
    'orderby'  => 'count'   
);

wp_generate_tag_cloud( $tags, $args );
?>

В завершение

Надеемся, вам понравилась вторая «порция» тегов шаблонов. В ближайшее время мы представим остальные части этого цикла.

Если у вас возникли какие-либо вопросы или замечания, обязательно напишите об этом в комментариях. И если вам понравилась наша статья, не забудьте поделиться ей с друзьями!

Данная публикация представляет собой перевод статьи «The Tuts+ Guide to Template Tags: Second Batch» , подготовленной дружной командой проекта Интернет-технологии.ру

Меню