the_title хук-фільтрWP 0.71

Застосовується до заголовка запису перед тим, як отримати або вивести заголовок на екран функціями: get_the_title() .

У деяких випадках, наприклад, коли використовується функція the_title() , заголовок можна видалити, повернувши порожнє значення у фільтрі ( NULL , FALSE або ).

Використання

add_filter( 'the_title', 'wp_kama_the_title_filter', 10, 2);

/**
 * Function for `the_title` filter-hook.
 *
 * @param string $title The post title.
 * @param int $id The post ID.
 *
 * @return string
 */
function wp_kama_the_title_filter( $title, $id ){

	// Filter...
	return $title;
}
$title
(рядок)
Заголовок запису.
$post_id
(число)
ID запису.

Приклади

0

#1 Додамо слово “Сторінка” до заголовка постійних сторінок:

Демонстрація роботи фільтра:

add_filter( 'the_title', 'add_text_to_page_title');
function add_text_to_page_title( $title ) {
	if( is_page() )
		$title = 'Сторінка: '. $title;

	return $title;
}

Через війну заголовок всіх постійних сторінок виглядатиме так: Страница: Заголовок страницы.

0

#2 Видалення заголовків у категорії

У цьому прикладі показано, як видалити заголовки записів, які знаходяться в категорії “reklama”:

add_filter( 'the_title', 'suppress_if_blurb', 10, 2);
function suppress_if_blurb( $title, $id = null ) {

	if ( in_category('reklama', $id ) ){
		return '';
	}

	return $title;
}

Додатковий параметр $id = null , значення за промовчанням другого параметра, вказаний оскільки деякі виклики функції можуть передавати цей параметр. Ця помилка з’явилася у версії 3.1 та була виправлена ​​у версії 3.3. Якщо потрібна зворотна сумісність з версіями 3.1-3.3, потрібно вказати значення за промовчанням для $id, інакше ви отримаєте PHP попередження, що не вказано обов’язковий параметр.

список змін

З версії 0.71Введено.

Де викликається хук

the_title

the_title

the_title

the_title

the_title

the_title

wp-includes/post-template.php 171

return apply_filters( 'the_title', $title, $id);

Де використовується хук у WordPress

wp-includes/default-filters.php 154

add_filter($filter, 'capital_P_dangit', 11);

wp-includes/default-filters.php 180

add_filter( 'the_title', 'wptexturize');

wp-includes/default-filters.php 181

add_filter( 'the_title', 'convert_chars');

wp-includes/default-filters.php 182

add_filter( 'the_title', 'trim');

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *