is_object_in_term()
Визначає чи пов’язаний зазначений об’єкт з будь-яким із зазначених елементів таксономії (терміном). Можна вказати конкретний термін(и) для перевірки зв’язку.
Зазначені терміни порівнюються з ID, назвою та складом термінів об’єкта. Якщо передати терміни як числа, порівняння буде лише з ID термінів об’єкта. Якщо не вказати термін, то функція перевірить чи є об’єкт хоч один термін із зазначеної таксономії.
Основа для:
has_term()
has_term()
1 раз – 0.000809 сек
(повільно) | 50000 разів – 1.16 сек
(швидко) |
PHP 7.0.8, WP 4.6.1
(повільно) | 50000 разів – 1.16 сек
(швидко) |
PHP 7.0.8, WP 4.6.1
Хуків немає.
Повертає
true|false|WP_Error
. true, якщо об’єкт відноситься до терміна або false. Об’єкт WP_Error, якщо виникла помилка.
Використання
if( is_object_in_term( $object_id, $taxonomy, $terms ) ){ ... }
-
$object_id
(число) (обов’язковий) - ID посту, зв’язок якого з терміном потрібно перевірити.
-
$taxonomy
(рядок) (обов’язковий) - Назва таксономії, до якої належить термін із параметра $terms.
-
$terms
(рядок/масив/число) -
ID, назва або склад терміна. Можна вказати кілька термінів у масиві.
Типово: null
Приклади
#1 Перевірка наявності термінів об’єкта
Перевіримо, чи знаходиться поточний пост ($post->ID) у терміні “Мов” (yaziki або ID=5), таксономії ‘my_taxonomy’:
$is_in = is_object_in_term( $post->ID, 'my_taxonomy', 'yaziki' ); if ( $is_in ) echo 'Піст знаходиться в терміні "Мов""; // також можна вказати термін так $is_in = is_object_in_term( $post->ID, 'my_taxonomy', 'Мови'); // або $is_in = is_object_in_term( $post->ID, 'my_taxonomy', 5);
#2 Перевірка кількох термінів
$is_in = is_object_in_term( $post->ID, 'my_taxonomy', array('Мови', 25) ); if($is_in) echo 'Піст пов'язаний з одним із термінів: Мови', 25';
список змін
З версії 2.7.0 | Введено. |