is_tax( string|array $taxonomy = '', int|string|array $term = '' )

Is the query for an existing custom taxonomy archive page?


Description 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 Parameters

$taxonomy

(string|array) (Optional) Taxonomy slug or slugs.

Default value: ''

$term

(int|string|array) (Optional) Term ID, name, slug or array of Term IDs, names, and slugs.

Default value: ''


Top ↑

Return Return

(bool) True for custom taxonomy archive pages, false for built-in taxonomies (category and tag archives).


Top ↑

Source Source

File: wp-includes/query.php

function is_tax( $taxonomy = '', $term = '' ) {
	global $wp_query;

	if ( ! isset( $wp_query ) ) {
		_doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' );
		return false;
	}

	return $wp_query->is_tax( $taxonomy, $term );
}

Top ↑

Changelog Changelog

Changelog
Version Description
2.5.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 1 content
    Contributed by Codex

    Examples

    is_tax();
    // When any custom taxonomy archive page is being displayed.
    
    is_tax( 'channel' );
    // When the archive page for taxonomy of 'channel' is being displayed.
    
    is_tax( 'channel', 'BBC1' );
    // When the archive page for taxonomy of 'channel' is being displayed
    // and the 'channel' taxonomy term is 'BBC1'.
    
    
  2. Skip to note 2 content
    Contributed by Codex

    Post Formats
    The taxonomy slug for Post Formats differs from the Post Format slug. The register_taxonomy() function appends a post-format- base to the Post Format slug. So, e.g. while the “Aside” Post Format type has a slug of aside, the post_format taxonomy term “Aside” has a slug of post-format-aside.

    // When the archive page for any Post Format term is being displayed.
    is_tax( 'post_format' );
    
    // When the archive page for Post Format type 'aside' is being displayed.
    is_tax( 'post_format', 'post-format-aside' );
    

You must log in before being able to contribute a note or feedback.