Как вывести описание категории в WordPress с помощью функции category_description().

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

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

Описание категории в WordPress можно добавить, перейдя в админку в раздел «Записи» — «Рубрики» и выбрав пункт «Изменить».

Ниже можно увидеть поле «Описание».

Сюда вводят текст описания, после чего жмем кнопку «Обновить». Добавить текст описания можно и при создании рубрики. Ранее мы уже рассматривали процесс добавления визуального редактора для поля описания вот тут — http://webprovincia.com/wordpress/visualniy-redaktor-dlya-rubrik.html.

Способы вывода описания рубрики в WordPress

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

Для редактирования страниц рубрик найдите в папке своей темы файл category.php, если нет то archive.php.

1. На странице самой категории.

Чтобы вывести описание рубрики в WordPress используется функция — category_description().

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

<?php $description = category_description( $category_id ); ?>

Здесь принимаемый параметр $category_id – это id категории, описание которой вы хотите вывести. Посмотреть значение id, можно перейдя в админку в раздел «Записи» — «Рубрики» нажать на кнопку изменить в строке нужной вам категории и в строке браузера вы увидите это значение.

Чтобы вывести описание на странице текущей категории стоит использовать код.

<?php echo category_description(); ?>

Тут есть важный момент. В случае использования category_description() на странице архива, отличной от category.php, то вам нужно произвести проверку на то генерируется ли именно страница категории, а не страница автора, меток или другая таксономия.

Сделать это можно с помощью условного оператора is_category().

<?php
    if(is_category){
        echo category_description();
    }
?>

2. На любой произвольной странице.

Для вывода этой информации на любой произвольной странице используют ту же функцию category_description(), но указывают значение параметра id.

Можно напрямую ввести числовое значение id.

<?php echo category_description(19); ?>

Либо же определить id с помощью функции get_the_category().

<?php
    $catID = get_the_category();
    echo category_description( $catID[0] );
?>

3. Как вывести описание только на первой странице категории при наличии пагинации в WordPress?

Это важная задача, которая поможет избежать дублирования контента на страницах пагинации. Сделать это можно с помощью следующего кода.

<?php 
 if (is_category()) {
  if (is_paged()) { echo '';}
  else {
     echo category_description(); }
 } ?>

4. Выводим блок с описанием  только в случае его заполнения.

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

<?php
    if ( $category_description = category_description() )
        echo '<div class="category__description">'. $category_description .'</div>';
    else
        echo '<div class="no__category__description">Описание не найдено.</div>';
?>

Альтернативный вариант

Еще один способ вывести описание рубрики на странице самой рубрики в WordPress – это использовать функцию — the_archive_description(). Она комплексно может выводить описание для различных таксономий, страниц авторов, меток, категорий, архивов и пр.

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

<?php the_archive_description( $before, $after ); ?>

Где $before – это текст перед описанием. Можно указать HTML. А $after – это текст после описания. Можно указать HTML. Пример использования этих параметров.

<?php 
    the_archive_description( '<div class="taxonomy-description">', '</div>' ); 
?>

Шотркод с функционалом вывода списка категорий в формате: название + описание.

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

function wp_catlist_description() {
$string = '<ul>';
$catlist = get_terms( 'category' );
if ( ! empty( $catlist ) ) {
foreach ( $catlist as $key => $item ) {
$string .= '<li>'. $item->name . '<br />';
$string .= '<em>'. $item->description . '</em></li>';
}
}
$string .= '</ul>';
return $string;
}

add_shortcode('wp_categories_list', 'wp_catlist_description');
add_filter('widget_text', 'do_shortcode');

Далее вы можете использовать шорткод для вывода данного блока.

[wp_categories_list]

В админке это выглядит следующим образом.

А на сайте вот так.

На этом сегодня все. Мы разобрались, как работать с описанием категорий в WordPress в различных ситуациях и как эффективно выводить этот блок при seo оптимизации вашего проекта.

Поделиться в социальных сетях:
Нет комментариев к данной статье

Оставить новый комментарий

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