has_term() WordPress Function

The has_term() function is used to check if a post has a given term. This function can be used with any post type, including custom post types.

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

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.


Top ↑

Parameters

$term

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

Default value: ''

$taxonomy

(string)(Optional) Taxonomy name.

Default value: ''

$post

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

Default value: null


Top ↑

Return

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


Top ↑

Source

File: wp-includes/category-template.php

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;
}


Top ↑

Changelog

Changelog
VersionDescription
3.1.0Introduced.

The content displayed on this page has been created in part by processing WordPress source code files which are made available under the GPLv2 (or a later version) license by theĀ Free Software Foundation. In addition to this, the content includes user-written examples and information. All material is subject to review and curation by the WPPaste.com community.