has_category( string|int|array $category = '', int|object $post = null )

Checks if the current post has any of given category.

Description

The given categories are checked against the post’s categories’ term_ids, names and slugs. Categories given as integers will only be checked against the post’s categories’ term_ids.

If no categories are given, determines if post has any categories.

Parameters

$category

(string|int|array) (Optional) The category name/term_id/slug, or an array of them to check for.

Default value: ''

$post

(int|object) (Optional) Post to check instead of the current post.

Default value: null

Return

(bool) True if the current post has any of the given categories (or any category, if no category specified). False otherwise.

Source

File: wp-includes/category-template.php

function has_category( $category = '', $post = null ) {
	return has_term( $category, 'category', $post );
}

Changelog

Version Description
3.1.0 Introduced.

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