is_object_in_term() — проверяет принадлежность указанных элементов таксономии к указанному посту

Функция возвращает true, если к посту (или произвольному типу поста), ID которого указан в первом параметре, относится хотя бы один из элементов таксономии (название которой — второй параметр функции), которые перечислены в третьем параметре функции. Если к указанному посту не относится ни один из перечисленных элементов, функция возвращает false.

is_object_in_term( $object_id, $taxonomy, $terms = null )
$object_id
(целое число) ID объекта (то есть ID записи или какого-либо другого типа постов).
$taxonomy
(строка) Название таксономии, для которой будет осуществляться проверка.
$terms
(целое число|строка|массив) ID, названия либо ярлыки элементов, принадлежность которых будем проверять. Несколько значений можно перечислить через массив. Если данный параметр не указан, то будет проверяться принадлежность объекта к любому из элементов указанной таксономии.

Несколько похожих функций для более частных случаев:

  • Используйте in_category() для того, чтобы проверить, находится ли пост в указанной рубрике (рубриках).
  • Используйте has_tag(), когда нужно проверить, присвоены ли к посту конкретные метки.

Пример

Предположим, что на нашем сайте есть каталог телефонов и мобильных устройств, и мы хотим проверить, принадлежит ли телефон с указанным ID к элементу таксономии (это будут компании-производители) «apple» (это будет ярлык компании «Apple»).

if ( is_object_in_term( $phone_id, 'company', 'apple' ) ) :
	// если ДА
else :
	// если НЕТ
endif;

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

phpjsHTMLCSSSQLПросто код
  Для того, чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или авторизуйтесь на сайте.
Получайте новости блога по email или следите за мной в социальных сетях.
  • Владимир: и на третьей строке не хватает скобки ) закрывающей if :)

  • Миша: Добрый вечер! Рекомендую получить ID пользователя через функцию get_current_user_id().

  • Дмитрий: Миша, подскажите пожалуйста, я использую такой редирект, но он не срабатывает: add_action( 'template_redirect', funct...

  • Миша: Ну как не определена - это аргумент функции. Или я просто вас не до конца понимаю.

  • Артем: Ага, понял. Вот только почему $args? Она же нигде не определена, по логике должна быть переменная $true_field_params или...