WordPress как на ладони

category_description()WP 1.0.0

Получает описание рубрики, которое указывается на странице редактирования рубрики в админ-панели (посты > рубрики).

Если category_description() используется на странице архивов, отличной от category.php, то перед тем как использовать функцию нужно проверить, что генерируется страница категорий, а не какая-нибудь страница меток, авторов, дат и т.д.. Сделать это можно условным тегом is_category().

Работает на основе: term_description()

Хуков нет.

Возвращает

Строку. Описание категории.

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

$description = category_description( $category_id );
$category_id(число)
ID категории, описание которой нужно получить.
По умолчанию: текущая категория (в запросе)

Примеры

0

#1 Обычный пример использования

Выведем на экран описание категории 3 (id категории), используя оператор echo. echo нужен для вывода описания категории на экран, так как функция просто возвращает описание и ничего не выводит.

<?php echo category_description(3); ?>

В результате, получим описание категории 3.

0

#2 Выводим описание категории, только если оно есть

if ( $cat_desc = category_description() )
	echo '<div class="cat__desc">'. $cat_desc .'</div>';
else
	echo '<div class="no__cat__desc">Описание отсутствует!</div>';
0

#3 Описание категории полученной через ярлык

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

<?php echo category_description( get_category_by_slug('category-slug')->term_id ); ?>

Заметка: это скорее наглядный пример и использовать его я не рекомендую, потому что нет необходимости получать все данные категории, лишь для того, чтобы получить ID категории.

Пример выше можно так же заменить на этот, тоже будет получено описание категории по слагу:

<?php echo get_category_by_slug('category-slug')->description; ?>
0

#4 Очистим описание категории при выводе, через фильтр term_description

Допустим у нас в описании категории используется шоткод [image=/ссылка_на_картинку] мы используем этот шоткод в других местах, но когда мы выводим описание категории, он нам не нужен. Чтобы его убрать воспользуемся фильтром:

add_filter('term_description', 'clear_term_description_image_shortcode');
function clear_term_description_image_shortcode($value){
	return preg_replace('@[image=[^]]*]@', '', $value);
}

Список изменений

С версии 1.0.0 Введена.

Код category_description() WP 6.4.3

function category_description( $category = 0 ) {
	return term_description( $category );
}
31 комментарий
Полезные 5 Все
    Войти