2011-07-05 33 views
1

我試圖創建一個自定義分類與子條款的鏈接列表。即:WordPress的:列表定製分類與兒童

<ul> 
    <li><a href="/telephony">Telephony</a> 
     <ul> 
      <li><a href="/blackberry">BlackBerry</a></li> 
      <li><a href="/fixed-ip">Fixed IP</a></li> 
     </ul> 
    </li> 
    <li><a href="/email">Email</a> 
     <ul> 
      <li><a href="/fax">Fax</a></li> 
      <li><a href="/text">Text</a></li> 
      <li><a href="/nhs-email">NHS Email</a></li> 
     </ul> 
    </li> 
</ul> 

到目前爲止我有:

<?php 
    $termID = 451; 
    $taxonomyName = "service_line_category"; 
    $termchildren = get_term_children($termID, $taxonomyName); 

    echo '<ul>'; 
    foreach ($termchildren as $child) { 
     $term = get_term_by('id', $child, $taxonomyName); 
     echo '<li><a href="' . get_term_link($term->name, $taxonomyName) . '">' . $term->name . '</a></li>'; 
    } 
    echo '</ul>'; 
    ?> 

然而,這僅僅抓住的孩子 '$ termID = 451;'但我不知道如何修改此列表,以便讓父母和子女在列表中的「service_line_category」中找到所有條款。

任何想法?

回答

-1

@Alexcp所以是這樣的:

<?php 
    $taxonomyName = "service_line_category"; 
    $termID = get_cat_ID($taxonomyName); 
    $termchildren = get_term_children($termID, $taxonomyName); 

    echo '<ul>'; 
    foreach ($termchildren as $child) { 
     $term = get_term_by('id', $child, $taxonomyName); 
     echo '<li><a href="' . get_term_link($term->name, $taxonomyName) . '">' . $term->name . '</a></li>'; 
    } 
    echo '</ul>'; 
    ?> 

顯然,這並不工作,但是這是沿着正確的線路?

+0

爲什麼張貼不工作,並接受它的答案嗎?接受cyrils回答如果這是有效的。 – Blowsie

0

使用一個變量,你可以做這樣的事情:

$taxonomyName = "service_line_category"; 
$termID = get_cat_ID($taxonomyName); 
6

這裏是一段代碼,你需要:

<?php 
$taxonomyName = "service_line_category"; 
$terms = get_terms($taxonomyName,array('parent' => 0)); 
foreach($terms as $term) { 
    echo '<a href="'.get_term_link($term->slug,$taxonomyName).'">'.$term->name.'</a>'; 
    $term_children = get_term_children($term->term_id,$taxonomyName); 
    echo '<ul>'; 
    foreach($term_children as $term_child_id) { 
     $term_child = get_term_by('id',$term_child_id,$taxonomyName); 
     echo '<li><a href="' . get_term_link($term_child->term_id, $taxonomyName) . '">' . $term_child->name . '</a></li>'; 
    } 
    echo '</ul>'; 
} 
?> 
+0

不錯的一個!這工作完美。 –