WordPress как на ладони
wordpress jino

has_tag() WP 2.6.0

Проверяет принадлежит ли пост к указанным меткам, т.е. есть ли у поста указанные метки. Условный тег.

Указанные в параметре $tag метки сравниваются с метками поста. Сравниваются названия, слаги и ID меток. Если переданы только ID меток (числа), то сравниваться будут только ID (term_ids).

Если параметру $tag не передано ни одно значение, то будет проверятся имеет ли пост метки вообще.

Работает на основе: has_term()
✈ 1 раз = 0.001853с = очень медленно | 50000 раз = 96.58с = очень медленно

Хуков нет.

Возвращает

true, если у поста есть указанные метки и false в противном случае.

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

<?php if( has_tag( $tag, $post ) ){ ... } ?>
$tag(строка/массив/число)
Название, слаг или ID метки, наличие которых будет проверятся у текущего поста. Также можно указывать массивы названий, слагов и ID меток.
По умолчанию: нет
$post(объект)
Другой пост — не текущий, который нужно проверить на наличие у него указанных тегов.
По умолчанию: текущий пост

Примеры

#1 Проверим наличие любых меток у текущего поста:

<?php 
if( has_tag() )
	echo "У текущего поста есть метки"; 
?>

#2 Проверим принадлежит ли пост к метке "kino", если да выведем на экран соответствующую надпись:

<?php
if( has_tag( 'kino' ) )
	echo "У текущего поста есть метка `kino`"; 
?>

#3 Проверим если ли у поста 56 метки 45 и 89 (вместо ID меток можно указать их названия или слаги):

<?php
if( has_tag( array(45,89), 56 ) )
	echo "У поста 56 (ID), есть метки с ID 45 и 89";
?>

Код has tag: wp-includes/category-template.php WP 4.8.2

<?php
function has_tag( $tag = '', $post = null ) {
	return has_term( $tag, 'post_tag', $post );
}

Cвязанные функции

Из метки: Условные теги (все)

Еще из раздела: Для записей

has_tag Комментариев нет

Здравствуйте, !

Ваш комментарий