WP_Query::is_category( int|string|int[]|string[] $category = '' )

Is the query for an existing category archive page?

Description

If the $category parameter is specified, this function will additionally check if the query is for one of the categories specified.

Parameters

$category

(int|string|int[]|string[]) (Optional) Category ID, name, slug, or array of such to check against.

Default value: ''

Return

(bool) Whether the query is for an existing category archive page.

Source

File: wp-includes/class-wp-query.php

public function is_category( $category = '' ) {
		if ( ! $this->is_category ) {
			return false;
		}

		if ( empty( $category ) ) {
			return true;
		}

		$cat_obj = $this->get_queried_object();

		$category = array_map( 'strval', (array) $category );

		if ( in_array( (string) $cat_obj->term_id, $category, true ) ) {
			return true;
		} elseif ( in_array( $cat_obj->name, $category, true ) ) {
			return true;
		} elseif ( in_array( $cat_obj->slug, $category, true ) ) {
			return true;
		}

		return false;
	}

Changelog

Version Description
3.1.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_query/is_category