我发现(google)这个函数的性能几乎完全符合我的需要。创建CPT术语的链接文本结构(面包屑),即父类别->子类别->孙子类别
唯一的问题是输出的顺序有点偏离-子类别->父类别->孙子类别
我无法从下面的代码中找出如何正确订购。
任何指点都将不胜感激。
非常感谢
抢劫
function get_the_term_list_breadcrumbs( $id = 0, $taxonomy, $before = \'\', $sep = \'\', $after = \'\', $breadcrumb_sep = \' → \' ) {
$terms = get_the_terms( $id, $taxonomy );
if ( is_wp_error( $terms ) )
return $terms;
if ( empty( $terms ) )
return false;
foreach ( $terms as $term ) {
$link = get_term_link( $term, $taxonomy );
if ( is_wp_error( $link ) )
return $link;
// Find parents
$names = array();
$ancestors = get_ancestors( $term->term_id, $taxonomy );
if ( count( $ancestors ) > 0 ) {
foreach ( $ancestors as $anc ) {
$t = get_term( $anc, $taxonomy );
$names[] = $t->name;
}
}
$names[] = $term->name;
$link_text = implode( $breadcrumb_sep, $names );
$term_links[] = \'<a href="\' . $link . \'" rel="tag">\' . $link_text . \'</a>\';
}
$term_links = apply_filters( "term_links-$taxonomy", $term_links );
return $before . join( $sep, $term_links ) . $after;
}