[英]How to get only child terms of current post type?
有一個具有自定義分類法“類型”的自定義帖子類型“ pubs”,管理員可以在其中輸入父項及其子項。 使用此代碼獲取當前帖子類型的所有條款:
$object_terms = wp_get_object_terms($post->ID, 'types', array('fields' => 'all'));
if ($object_terms) {
echo '' . '' . '' ;
$res = '';
foreach ($object_terms as $term) {
$res .= $term->name . ',';
}
echo rtrim($res,' ,').'' . '';
}
此代碼同時顯示父項和子項。 有什么方法可以從結果中排除父項? 我需要代碼僅顯示與當前帖子相關的子條款。
未經測試,但我認為,如果將以下內容放在頂部的foreach循環中,則只會得到孩子:
if ($term->parent == 0) continue;
僅針對仍在尋找的人:
解決方案是針對具有多個層次結構的層次結構,而您只需要最后一個層次結構的情況。
$term_array = wp_get_object_terms( $post->ID, $taxonomy, array( 'fields' => 'ids' ) );
foreach ($term_array as $term_id){
$children=get_term_children($term_id, $taxonomy);
if(empty($children)){
$exclude=$term_id;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.