我有一个自定义的层次分类法(“位置”),如下所示:
Tokyo
--Minato
----Roppongi
我有一篇帖子,其中只选择了“六本木”,我想只显示分类法(Tokyo)的顶级父术语,而不显示任何类别链接。
<?php $myterms = get_terms( array( \'taxonomy\' => \'location\', \'parent\' => 0 ) );?>
上面的代码给了我。。。
数组([0]=>WP\\U术语对象([Term\\u id]=>11[name]=>Tokyo[slug]=>Tokyo[Term\\u group]=>0[Term\\u taxonomy\\u id]=>11[taxonomy]=>位置[描述]=>[parent]=>0[count]=>0[filter]=>raw))
。。。如果我使用。。。
<?php print_r($myterms);?>
。。。在前端显示结果。如何仅显示数组中的[名称]值?我尝试了以下代码,但出现了一个错误。
<?php echo $myterms[0][\'name\'];?>
SO网友:Ashok Kumar Nath
请尝试以下代码。您需要帖子ID和分类名称:
function wpse_290965_top_level_tax_name( $post_id, $tax )
{
$terms = wp_get_post_terms( $post->ID, $tax );
$anc = get_ancestors( $terms[0]->term_id, $tax );
$parent = array_values( array_slice( $anc, -1 ) )[0];
$term = get_term_by( \'id\', $parent, $tax );
return $term->name;
}
现在这样称呼它:
<?php echo wpse_290965_top_level_tax_name( 234, \'location\' ); ?>
这里234是post ID的示例。