Вход на сайт

Просмотр новости

Найдите то, что Вас интересует

Хук-Фильтр WordPress: wp_title

Дата публикации: 20-09-2026 14:59:16

Позволяет изменить текст заголовка страницы, сформированный функцией wp_title().

Основное содержимое страницы с новостью.

Позволяет изменить текст заголовка страницы, сформированный функцией wp_title().

Обычно этот текст выводится в HTML-теге <title> и отображается во вкладке браузера.

Обработчик должен возвращать строку. Если забыть return, заголовок может стать пустым, а последующие обработчики могут работать неправильно.

Фильтр применяется после сборки заголовка и добавления разделителя, перед выводом или возвратом результата.

Функция wp_title() и этот хук условно считается устаревшими, однако они по-прежнему доступны и не помечены как устаревшие.

Рекомендуется использовать используйте поддержку title-tag, при котором WordPress формирует заголовок через wp_get_document_title(), без вызова фильтра wp_title.

Для настройки такого заголовка доступны хуки:

Использование
add_filter( 'wp_title', 'wp_kama_title_filter', 10, 3 );

/**
 * Function for `wp_title` filter-hook.
 * 
 * @param string $title       Page title.
 * @param string $sep         Title separator.
 * @param string $seplocation Location of the separator (either 'left' or 'right').
 *
 * @return string
 */
function wp_kama_title_filter( $title, $sep, $seplocation ){
	// filter...
	return $title;
}
$title(строка)
Сформированный заголовок, включая разделитель и пробелы вокруг него.
По умолчанию не содержит название сайта. На главной странице сайта обычно передаётся пустая строка.
$sep(строка)
Разделитель, переданный в wp_title(). По умолчанию » (»). Может быть пустой строкой.
На момент вызова фильтра разделитель уже включён в $title. Изменение переменной $sep внутри обработчика не заменит его в готовой строке.
$seplocation(строка)

Расположение разделителя, переданное в wp_title():

  • right - справа от заголовка. Порядок частей составного заголовка также разворачивается.
  • left или другое значение - слева от заголовка.

По умолчанию передаётся пустая строка '', которая работает как left.

Примеры#1 Добавление названия сайта, описания и номера страницы

Пример для темы, которая выводит <title> через wp_title().

В header.php, внутри <head>:

<title><?php wp_title( '|', true, 'right' ); ?></title>

В functions.php:

add_filter( 'wp_title', 'mytheme_filter_wp_title', 10, 3 );

function mytheme_filter_wp_title( $title, $sep, $seplocation ) {
	if ( is_feed() ) {
		return $title;
	}

	$site_name = get_bloginfo( 'name', 'display' );

	if ( 'right' === $seplocation ) {
		$title .= $site_name;
	} else {
		$title = $site_name . $title;
	}

	$description = get_bloginfo( 'description', 'display' );

	if ( $description && ( is_home() || is_front_page() ) ) {
		$title .= " $sep $description";
	}

	$page_number = max(
		(int) get_query_var( 'paged' ),
		(int) get_query_var( 'page' )
	);

	if ( $page_number >= 2 && ! is_404() ) {
		$title .= " $sep " . sprintf(
			__( 'Page %s', 'mytheme' ),
			$page_number
		);
	}

	return esc_html( $title );
}

Код добавляет название сайта, на главной и странице записей дописывает описание сайта, а при пагинации добавляет номер страницы. Учитывается как пагинация списка записей (paged), так и разбиение одной записи на страницы (page). При вызове в контексте ленты заголовок остаётся без изменений.

При разделителе справа результат для записи будет выглядеть так: Название записи | Название сайта.

Замените mytheme на текстовый домен своей темы. Название сайта дополнительно выводить в header.php не нужно.

WordPress подключает к этому хуку esc_html() с приоритетом 10. Обработчик из functions.php с таким же приоритетом обычно выполняется уже после него. Поэтому добавленный текст нужно экранировать самостоятельно, как в примере.

Схожие новости

#Наименование новостиТональностьИнформативностьДата публикации
1Хук-Фильтр WordPress: paginate_links017.6920-09-2026
2Хук-Фильтр WordPress: post_type_link021.1121-09-2026
3Хук-Фильтр WordPress: get_the_excerpt019.0922-09-2026
4Хук-Фильтр WordPress: the_category019.0920-09-2026
5Хук-событие WordPress: admin_head023.6820-09-2026
6Хук-Фильтр WordPress: excerpt_length019.4120-09-2026
7Функция WordPress: WC_Product{}09.1803-10-2026
8Хук-событие WordPress: restrict_manage_posts012.422-09-2026
9Хук-событие WordPress: edit_post_(post_type)018.3322-09-2026
10Хук-событие WordPress: network_admin_edit_(action)021.1601-10-2026

Классификация: Мнения. Схожих патентов: 0. Схожих новостей: 10. Тональность: 0. Информативность: 18.33. Источник: wp-kama.ru.