get_object_taxonomies

函数
get_object_taxonomies ( $object, $output = 'names' )
参数
  • (string|string[]|WP_Post) $object Name of the type of taxonomy object, or an object (row from posts)
    Required:
  • (string) $output Optional. The type of output to return in the array. Accepts either 'names' or 'objects'. Default 'names'.
    Required:
    Default: 'names'
返回值
  • (string[]|WP_Taxonomy[]) The names or objects of all taxonomies of `$object_type`.
定义位置
相关方法
get_post_taxonomiesget_the_taxonomiesget_taxonomiesget_attachment_taxonomiesthe_taxonomies
引入
2.3.0
弃用
-

get_object_taxonomies函数用来检索与一个给定的文章类型或其他对象类型相关的分类学对象的列表: 这个函数可以用来检索一个自定义文章类型的分类学数据,或者检索当前文章或页面的分类学数据。

返回为所请求的对象或对象类型注册的分类法的名称或对象。
如文章对象或文章类型的名称。

例子:

$taxonomies = get_object_taxonomies( ‘post’ );

结果:

Array( ‘category’, ‘post_tag’ )

function get_object_taxonomies( $object, $output = 'names' ) {
	global $wp_taxonomies;

	if ( is_object( $object ) ) {
		if ( 'attachment' === $object->post_type ) {
			return get_attachment_taxonomies( $object, $output );
		}
		$object = $object->post_type;
	}

	$object = (array) $object;

	$taxonomies = array();
	foreach ( (array) $wp_taxonomies as $tax_name => $tax_obj ) {
		if ( array_intersect( $object, (array) $tax_obj->object_type ) ) {
			if ( 'names' === $output ) {
				$taxonomies[] = $tax_name;
			} else {
				$taxonomies[ $tax_name ] = $tax_obj;
			}
		}
	}

	return $taxonomies;
}

常见问题

FAQs
查看更多 >