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

term_description() WP 2.8.0

Получает описание термина (элемента таксономии: метки, категории и т.п.), которое указывается на странице создании/редактировании термина.

Если не указан параметр $term_id, то будет получено описание текущего термина (текущей рубрики, метки и т.д.).

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

Хуков нет.

Возвращает

Строку. Описание термина или пусто ('').

Фильтры

Для фильтрации результата используйте следующие фильтры: term_(field) или (taxonomy)_(field). Эти фильтры применяются в функции sanitize_term_field(), которая срабатывает в результате работы term_description().

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

term_description( $term, $taxonomy );
$term(число/объект)
ID или объект термина (элемента таксономии), описание которого нужно получить.
Если этот параметр не указать, то функция попытается получить описание термина, который в данный момент находится в запросе. Например, если отображается страница категории "SEO", то функция получит описание этой категории.
По умолчанию: ID текущего термина в запросе
$taxonomy(строка)

Название таксономии, к которой принадлежит термин, описание которого нужно получить. Может быть: category, post_tag, link_category или произвольная таксономия.

Если не указан параметр $term, этот параметр будет равен названию таксономии текущего термина.
По умолчанию: 'post_tag'

Примеры

#1. Получим описание текущего термина (категории, метки и т.п.):

$description = term_description();
echo $description;

#2. Выведем на экран описание раздела таксономии my_tax, ID которого равен 28:

echo 'Описание раздела: ' . term_description('28', 'my_tax');

Код term description: wp-includes/category-template.php WP 4.8.2

<?php
function term_description( $term = 0, $taxonomy = 'post_tag' ) {
	if ( ! $term && ( is_tax() || is_tag() || is_category() ) ) {
		$term = get_queried_object();
		if ( $term ) {
			$taxonomy = $term->taxonomy;
			$term = $term->term_id;
		}
	}
	$description = get_term_field( 'description', $term, $taxonomy );
	return is_wp_error( $description ) ? '' : $description;
}

Cвязанные функции

Из метки: Описание (description)

Еще из раздела: Любые таксономии

term_description 6 комментариев
  • Андрей @

    term_description возвращает описание терма в контейнере . Как убрать эти тэги: Контейнер p

    Ответить3.9 года назад #
    • Kama4464

      Так можно просто удалить все хуки, которые и обрабатывают описание:

      remove_all_filters('term_description');
      echo term_description(134, 'post_tag');

      или так можно удалить только Р тег:

      add_filter('term_description', 'del_term_description_p');
      function del_term_description_p( $value ){
      	return preg_replace('~<[/p]+>~i', '', $value);
      }
      echo term_description(134, 'post_tag');
      1
      Ответить3.9 года назад #
      • Андрей @

        Да! Действительно работает. Оба варианта. Огромное спасибо! Кстати, отличный сайт, постоянно пользуюсь )

        Ответить3.9 года назад #
  • Привет!
    А как полностью удалить колонку "Описание" из админки в категориях?
    Так, чтобы при добавлении категории "Описание" вообще не отображалось.
    Спасибо!

    Ответить1.3 года назад #
    • campusboy1848 cайт: wp-plus.ru

      Привет. Как вариант просто скрыть его с помощью стилей оформления:

      add_action('admin_head', 'hide_description_in_category');
      
      function hide_description_in_category(){
       echo '
       <style>
       .taxonomy-category .form-field.term-description-wrap {
        display: none;
       }
       </style>'
       ;
      }

      Добавляется в файл темы functions.php.

      1
      Ответить1.3 года назад #
  • Юрец cайт: виртуальная-жд.рф

    Превосходно! Можно название писать коротким "для себя" в админке, а выводить полную информацию уже для пользователей!

    Ответить3 месяца назад #

Здравствуйте, !

Ваш комментарий