Функция has_post_format()
в WordPress используется для проверки, имеет ли конкретный пост определенный формат. Форматы постов позволяют пользователям и разработчикам определить стиль и отображение контента на основе его типа. Например, посты могут иметь форматы «aside
«, «gallery
«, «link
«, «image
«, «quote
«, «status
«, «video
«, «audio
«, «chat
» и другие.
has_post_format( string|string[] $format, int|WP_Post|null $post = null ): bool
Параметры
$format
(обязательный): Формат поста или массив форматов, которые нужно проверить. Это строка или массив строк.$post
(необязательный): Пост, для которого нужно проверить формат. По умолчанию используется текущий пост.
Возвращаемое значение
Функция возвращает true
, если пост имеет указанный формат, и false
в противном случае.
Пример использования
Рассмотрим пример, где мы проверяем, имеет ли пост формат «video
» и выводим соответствующее сообщение.
if ( has_post_format( 'video' ) ) {
echo '<p>Этот пост имеет формат видео.</p>';
} else {
echo '<p>Этот пост не имеет формат видео.</p>';
}
Пример использования с массивом форматов
Также можно проверить наличие нескольких форматов для поста. Например:
$formats = array( 'video', 'audio', 'gallery' );
if ( has_post_format( $formats ) ) {
echo '<p>Этот пост имеет один из указанных форматов: видео, аудио или галерея.</p>';
} else {
echo '<p>Этот пост не имеет указанных форматов.</p>';
}
Использование с конкретным постом
Функция has_post_format()
также позволяет проверять формат конкретного поста, передав его ID или объект WP_Post
в качестве второго параметра.
$post_id = 42; // ID поста, который нужно проверить
if ( has_post_format( 'quote', $post_id ) ) {
echo '<p>Пост с ID 42 имеет формат цитаты.</p>';
} else {
echo '<p>Пост с ID 42 не имеет формат цитаты.</p>';
}
Заключение
Функция has_post_format()
является полезным инструментом для проверки формата постов в WordPress. Она позволяет легко управлять выводом контента в зависимости от его формата и адаптировать отображение постов под нужды сайта.