WP_Query::is_tax() WordPress Method
The WP_Query::is_tax() method is used to check if the current request is for a taxonomy archive page.
WP_Query::is_tax( string|string[] $taxonomy = '', int|string|int[]|string[] $term = '' ) #
Is the query for an existing custom taxonomy archive page?
Description
If the $taxonomy parameter is specified, this function will additionally check if the query is for that specific $taxonomy.
If the $term parameter is specified in addition to the $taxonomy parameter, this function will additionally check if the query is for one of the terms specified.
Parameters
- $taxonomy
(string|string[])(Optional) Taxonomy slug or slugs to check against.
Default value: ''
- $term
(int|string|int[]|string[])(Optional) Term ID, name, slug, or array of such to check against.
Default value: ''
Return
(bool) Whether the query is for an existing custom taxonomy archive page. True for custom taxonomy archive pages, false for built-in taxonomies (category and tag archives).
Source
File: wp-includes/class-wp-query.php
public function is_tax( $taxonomy = '', $term = '' ) { global $wp_taxonomies; if ( ! $this->is_tax ) { return false; } if ( empty( $taxonomy ) ) { return true; } $queried_object = $this->get_queried_object(); $tax_array = array_intersect( array_keys( $wp_taxonomies ), (array) $taxonomy ); $term_array = (array) $term; // Check that the taxonomy matches. if ( ! ( isset( $queried_object->taxonomy ) && count( $tax_array ) && in_array( $queried_object->taxonomy, $tax_array, true ) ) ) { return false; } // Only a taxonomy provided. if ( empty( $term ) ) { return true; } return isset( $queried_object->term_id ) && count( array_intersect( array( $queried_object->term_id, $queried_object->name, $queried_object->slug ), $term_array ) ); }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
3.1.0 | Introduced. |