wordpress / latest / functions / has_term.html

has_term( string|int|array $term = '', string $taxonomy = '', int|WP_Post $post = null ): bool

Checks if the current post has any of given terms.

Description

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

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

Parameters

$term string|int|array Optional
The term name/term_id/slug, or an array of them to check for.

Default: ''

$taxonomy string Optional
Taxonomy name.

Default: ''

$post int|WP_Post Optional
Post to check. Defaults to the current post.

Default: null

Return

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

Source

File: wp-includes/category-template.php. View all references

function has_term( $term = '', $taxonomy = '', $post = null ) {
	$post = get_post( $post );

	if ( ! $post ) {
		return false;
	}

	$r = is_object_in_term( $post->ID, $taxonomy, $term );
	if ( is_wp_error( $r ) ) {
		return false;
	}

	return $r;
}

Uses

Uses Description

Used By

Used By Description

Changelog

Version Description
3.1.0 Introduced.

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