Site icon WP Smith

in_taxonomy(): Check to Determine Whether a Post Is in a Specific Custom/Builtin Taxonomy

I found this great code snippet by Alex Leonard.

[php]
<?php

/**
* Conditional function to check if post belongs to term in a custom taxonomy.
*
* @param tax string taxonomy to which the term belons
* @param term int|string|array attributes of shortcode
* @param _post int post id to be checked
* @return BOOL True if term is matched, false otherwise
*/
function wps_in_taxonomy($tax, $term, $_post = NULL) {

// if neither tax nor term are specified, return false
if ( !$tax || !$term ) { return FALSE; }

// if post parameter is given, get it, otherwise use $GLOBALS to get post
if ( $_post ) {
$_post = get_post( $_post );
} else {
$_post =& $GLOBALS['post'];
}

// if no post return false
if ( !$_post ) { return FALSE; }

// check whether post matches term belongin to tax
$return = is_object_in_term( $_post->ID, $tax, $term );

// if error returned, then return false
if ( is_wp_error( $return ) ) { return FALSE; }

return $return;
}
[/php]