is_tax()
Спрацьовує на архівній сторінці довільної (нової, користувальницької) таксономії. Умовний тег.
Повертає true якщо зареєстрована нова таксономія і користувач зайшов на сторінку елемента цієї таксономії (терміну).
Це аналог is_tag() , але замінює їх, а доповнює – спрацьовує лише нових (довільних) таксономій. Тобто. is_tax() поверне false на сторінках архівів рубрик та міток!
Повертає false, якщо для таксономії не передбачено параметра запиту у фронт-енді. Тобто. якщо під час реєстрації таксономії встановлено параметр query_var = false
. Дивіться register_taxonomy() .
Використовуйте has_term() , коли потрібно перевірити, чи знаходиться запис у таксономії.
WP_Query::is_tax()
is_product_tag()
(дуже швидко) | 50000 разів – 0.02 сек
(швидкість світла) |
PHP 7.0.2, WP 4.4.2
Хуків немає.
Повертає
true|false
.
Використання
if( is_tax( $taxonomy, $term ) ){ // це таксономія... }
-
$taxonomy
(рядок/масив) -
Назва таксономії (slug). Можна вказати кілька таксономій у масиві.
За замовчуванням: ” -
$term
(рядок/масив/число) -
Назва, ярлик або ID елемента таксономії (наприклад: рубрики, мітки).
За замовчуванням: ”
Приклади
#1 Перевіримо, що ми знаходимося на сторінці архіву таксономії
Нижче наведено кілька прикладів, коли функція is_tax() поверне true (спрацює).
is_tax(); // коли відображається сторінка будь-якої таксономії. is_tax( 'channel'); // коли виводяться записи таксономії 'channel', будь-якого елемента цієї таксономії. is_tax( 'channel', 'BBC1'); // коли виводяться записи таксономії 'channel' елемента (рубрики) 'BBC1'. is_tax( 'channel', array( 'BBC1', 'SNN' ) ); // коли виводяться записи таксономії 'channel' для елементів (рубрик) 'BBC1' або 'SNN'.
#2 Особливість з таксономією «Формат Посту»
Формати постів у WP реалізовані через таксономію. Але ярлик елемента таксономії в них не використовується як є, як це в інших такс, а до нього додається префікс post-format- .
Наприклад, є формат посту “Aside” з ярликом “aside”. Його назва дорівнює post-format-aside .
if( is_tax( 'post_format' ) ){ // Архівна сторінка для будь-якого "Формату Посту". } if( is_tax( 'post_format', 'post-format-aside' ) ){ // архівна сторінка "Формату Посту" aside. }
нотатки
- Global. WP_Query. $wp_query WordPress Query object.
список змін
З версії 2.5.0 | Введено. |
Код is_tax() is tax WP 6.0.2
function is_tax( $taxonomy = '', $term = '' ) { global $wp_query; if ( ! isset( $wp_query ) ) { _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags для роботи не буде для роботи, тому що не буде, якщо вони беруть участь false.' ), '3.1.0' ); return false; } return $wp_query->is_tax( $taxonomy, $term ); }