has_post_format

Проверяет наличие указанного формата у записи (поста). Условный тег.

В функцию передается названия формата или нескольких форматов и она проверят относится ли запись в цикле к указанному формату. Если указать второй параметр – ID записи, то функцию можно использовать за пределами цикла – проверка наличия формата будет для указанной записи.

Форматы записей – это дополнительная опция WordPress. Она включается отдельно и в некоторых темах её может не быть.
✈ 1 раз = 0.001473с = очень медленно | 50000 раз = 63.94с = очень медленно

Хуков нет.

Возвращает

Логические:
true – если запись относится к указанному формату;
false – если запись не относится ни к одному формату.

Использование

has_post_format( $format, $post_id );
$format(строка/массив) (обязательный)
Название формата поста, который нужно проверить. Можно указать несколько названий форматов в массиве. Базовые форматы WordPress: aside, chat, gallery, link
image, quote, status, video, audio.
$post_id(число/объект)
ID поста (записи), наличие указанного формата у которого нужно проверить.
По умолчанию: null – текущий пост в цикле

Примеры

#1 Демонстрация работы

Предположим нам в цикле нужно проверить формат поста и вывести иконку, если это, предположим, video формат:

<?php
function has_post_format( $format = array(), $post = null ) {
	$prefixed = array();

	if ( $format ) {
		foreach ( (array) $format as $single ) {
			$prefixed[] = 'post-format-' . sanitize_key( $single );
		}
	}

	return has_term( $prefixed, 'post_format', $post );
}

Комментарии:


Оставить комментарий

Your email address will not be published. Required fields are marked *