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

single_term_title() WP 3.1.0

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

Хуки из функции:
Возвращает

текст, заголовок текущей таксономии (категории, метки и т.п.). Если заголовок получить не удалось, вернется null.

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

<?php single_term_title( $prefix, $display ); ?>
$prefix(строка)
Текст, который будет показан перед заголовком.
По умолчанию: ''
$display(логический)
Если установить этот параметр в 0 (false), то результат функции будет возвращен, а не выведен на экран.
По умолчанию: 1 (true)

Примеры

#1. Заголовок текущей таксономии

Выведем на экран заголовок текущей таксономии "Учебники для школьников" с предшествующем текстом "Вы просматриваете раздел: ". Под таксономией понимается произвольная таксономия, или это может быть раздел категории (рубрики), или метка:

<p><?php single_term_title('Вы просматриваете раздел: '); ?>.</p>

Получим: Вы просматриваете раздел: Учебники для школьников

#2. Получим заголовок в переменную

Пример показывающий, как получить заголовок в переменную $term_title, а не выводить его на экран:

<?php $term_title = single_term_title('', 0); ?>

Заметки

  • Использует фильтры single_cat_title, single_tag_title и single_term_title, соответственно для каждого типа таксономии.

Код single term title: wp-includes/general-template.php WP 4.8.2

<?php
function single_term_title( $prefix = '', $display = true ) {
	$term = get_queried_object();

	if ( !$term )
		return;

	if ( is_category() ) {
		/**
		 * Filters the category archive page title.
		 *
		 * @since 2.0.10
		 *
		 * @param string $term_name Category name for archive being displayed.
		 */
		$term_name = apply_filters( 'single_cat_title', $term->name );
	} elseif ( is_tag() ) {
		/**
		 * Filters the tag archive page title.
		 *
		 * @since 2.3.0
		 *
		 * @param string $term_name Tag name for archive being displayed.
		 */
		$term_name = apply_filters( 'single_tag_title', $term->name );
	} elseif ( is_tax() ) {
		/**
		 * Filters the custom taxonomy archive page title.
		 *
		 * @since 3.1.0
		 *
		 * @param string $term_name Term name for archive being displayed.
		 */
		$term_name = apply_filters( 'single_term_title', $term->name );
	} else {
		return;
	}

	if ( empty( $term_name ) )
		return;

	if ( $display )
		echo $prefix . $term_name;
	else
		return $prefix . $term_name;
}

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

Из метки: title (заголовок)

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

single_term_title 6 комментариев
  • p0zitiv cайт: ustroistvo-avtomobilya.ru @

    Подскажите. Сейчас я оставляю комментарий на странице "http://wp-kama.ru/function/single_term_title", как бы я получил часть адреса "single_term_title" с помощью php (если бы был администратором)?

    Ответить3.7 года назад #
    • Kama4464
      $url = "http://wp-kama.ru/function/single_term_title";
      $name = preg_replace('~.*/~', '', $url);
      echo $name;
      
      // Вернет: single_term_title
      2
      Ответить3.7 года назад #
  • HukpoFuJl

    Как мне получить информацию о текущей таксономии?
    То есть мне нужно на странице archive.php вывести название / описание текущей таксономии (произвольного типа) и еще пару мета-полей к ней, которые я получаю по ID этой таксономии.
    Заранее спасибо

    Ответить2.5 года назад #
    • Kama4464
      // Для элемента таксономии mytax
      if( is_tax('mytax') ){
      	$term = get_queried_object(); // данные элемента текущей таксономии
      	// ID храниться тут
      	$term_id = $term->term_id;
      
      	/* Все возможные поля
      	[term_id] => 452
      	[name] => Метка
      	[slug] => metka
      	[term_group] => 0
      	[term_taxonomy_id] => 452
      	[taxonomy] => mytax
      	[description] => 
      	[parent] => 0
      	[count] => 14
      	[filter] => raw
      	*/
      }
      Ответить2.5 года назад #
  • Антон

    Как можно вывести названия таксономии в ключевом слове?
    Чтоб получилось вот так

    <meta name="keywords" content="название таксономии" />

    Вот собрал код, но при добавлении все зависает

    <?php if (is_tax('akter')) echo '<meta name="keywords" content="<?php single_term_title(''); ?>" />'; ?>
    Ответить2.4 года назад #
    • campusboy1847 cайт: wp-plus.ru
      <?php if (is_tax('akter')) echo '<meta name="keywords" content="'.single_term_title('', 0).'" />'; ?>
      1
      Ответить2.4 года назад #

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

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