the_title
Применяется к заголовку записи, перед тем как получить или вывести заголовок на экран функциями: the_title() или 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 $post_title The post title. * @param int $post_id The post ID. * * @return string */ function wp_kama_the_title_filter( $post_title, $post_id ){ // filter... return $post_title; }
- $title(строка)
- Заголовок записи.
- $post_id(число)
- ID записи.
Примеры
#1 Добавим слово "Страница" к заголовку постоянных страниц:
Демонстрация работы фильтра:
add_filter( 'the_title', 'add_text_to_page_title' ); function add_text_to_page_title( $title ) { if( is_page() ) $title = 'Страница: '. $title; return $title; }
В результате заголовок всех постоянных страниц будет выглядеть так: Страница: Заголовок страницы
.
#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 | Введена. |
Где вызывается хук
return apply_filters( 'the_title', $post_title, $post_id );
$string .= apply_filters('the_title', $post->post_title, $post->ID);
$string .= apply_filters('the_title', $post->post_title, $post->ID);
$title = apply_filters('the_title', $title, $post->ID);
$title = apply_filters('the_title', $title, $post->ID);
$post_title = apply_filters( 'the_title', $post->post_title, $post->ID );
$text = strip_tags( apply_filters( 'the_title', $result->post_title, $result->ID ) );
$title = apply_filters( 'the_title', $title, $post->ID );
$original_title = apply_filters( 'the_title', $original_object->post_title, $original_object->ID );
$title = apply_filters( 'the_title', $menu_item->title, $menu_item->ID );
$original_title = apply_filters( 'the_title', $original_object->post_title, $original_object->ID );
apply_filters( 'the_title', $page->post_title, $page->ID ),
$title = apply_filters( 'the_title', $menu_item->title, $menu_item->ID );
$data['title']['rendered'] = apply_filters( 'the_title', $template->title, $template->wp_id );
$title = apply_filters( 'the_title', $menu_item->post_title, $menu_item->ID );
$parent_name = apply_filters( 'the_title', $parent->post_title, $parent->ID );
Где используется хук в WordPress
add_filter( 'the_title', 'esc_html' );
add_filter( 'the_title', 'esc_html' );
add_filter( $filter, 'capital_P_dangit', 11 );
add_filter( 'the_title', 'wptexturize' );
add_filter( 'the_title', 'convert_chars' );
add_filter( 'the_title', 'trim' );