我使用以下代码获得了特定分类法(GENRES)的条款列表:
$categories = get_terms('genre', 'orderby=name&hide_empty=0');
if($categories){
echo '<select>';
foreach ($categories as $cat){
echo "<option value='{$cat->term_id}'>{$cat->name}</option>";
}
echo '</select>';
}
该代码有效,但是我还想获得分类法(GENRES)的标题,因此我使用了print_r($categories);
并得到了以下输出:
Array (
[0] => WP_Term Object (
[term_id] => 33
[name] => Action
[slug] => action
[term_group] => 0
[term_taxonomy_id] => 33
[taxonomy] => genre
[description] =>
[parent] => 0
[count] => 1
[filter] => raw
)
[1] => WP_Term Object (
[term_id] => 34
[name] => Comedy
[slug] => comedy
[term_group] => 0
[term_taxonomy_id] => 34
[taxonomy] => genre
[description] =>
[parent] => 0
[count] => 2
[filter] => raw
)
)
现在我使用print_r($categories->taxonomy);
来获得标题,但是我得到了“试图获取非对象的属性'分类法'”。为什么会发生此错误,以及如何使用我的实现获取分类法的标题?
答案 0 :(得分:1)
函数get_terms()
返回一个对象数组,而不是单个对象。
因此,只需使用$categories[0]->taxonomy
,您将获得输出“体裁”。