Функция post_type_archive_title()
в WordPress
Функция post_type_archive_title()
предназначена для отображения или получения заголовка архива для определенного типа поста (например, для записей, статей, фильмов и т.д.). Эта функция оптимизирована для файлов шаблонов archive.php
и archive-{post_type}.php
, которые используются для отображения заголовка архива поста.
Что делает функция?
- Возвращает строку: заголовок архива поста, если вы запросили его.
- Выводит заголовок: если вы просто хотите отобразить его на экране.
Сигнатура функции
post_type_archive_title( $prefix, $display );
Параметры
- $prefix (string): Текст, который будет отображаться перед заголовком. По умолчанию это пустая строка
''
. - $display (bool): Определяет, нужно ли отображать заголовок или возвращать его. По умолчанию —
true
, то есть заголовок будет отображен.
Возвращаемые значения
- string|null: Возвращает заголовок, если он запрашивается, и
null
, если заголовок отображается или произошла ошибка.
Пример использования
Предположим, у нас есть зарегистрированный тип поста «фильмы», который имеет метку "Movies" (фильмы), и параметр has_archive
установлен в true
. Если мы вызовем эту функцию на странице архива типа поста, например, http://example.com/movie, то увидим заголовок:
post_type_archive_title( 'Записи типа: ' );
Вывод: "Записи типа: Movies"
Код функции
Вот как выглядит реализация функции post_type_archive_title()
:
function post_type_archive_title( $prefix = '', $display = true ) {
if ( ! is_post_type_archive() ) {
return;
}
$post_type = get_query_var( 'post_type' );
if ( is_array( $post_type ) ) {
$post_type = reset( $post_type );
}
$post_type_obj = get_post_type_object( $post_type );
/**
* Фильтрует заголовок архива поста.
*
* @param string $post_type_name Метка типа поста.
* @param string $post_type Тип поста.
*/
$title = apply_filters( 'post_type_archive_title', $post_type_obj->labels->name, $post_type );
if ( $display ) {
echo $prefix . $title;
} else {
return $prefix . $title;
}
}
Похожие функции
В WordPress существует множество функций, которые могут быть полезны в работе с архивами постов. Вот некоторые из них:
get_post_type_archive_link()
: ��олучает ссылку на архив типа поста.get_the_archive_title()
: Получает заголовок текущего архива.is_archive()
: Проверяет, является ли текущая страница архивом.is_post_type_archive()
: Проверяет, является ли текущая страница архивом конкретного типа поста.
Заметка
Для успешной работы этой функции необходимо, чтобы на сайте был установлен и правильно настроен тип поста, который вы хотите отобразить. Убедитесь, что в вашем коде имеются все необходимые параметры, такие как labels
и has_archive
.
Используйте post_type_archive_title()
для удобного отображения заголовков архивов, что улучшает навигацию на вашем сайте и помогает пользователям легче находить нужные им типы контента.