2011-06-07 70 views
1

我正在使用get_categories()函數手動創建自己的導航菜單。我有一個自定義的分類,我使用稱爲類別,我試圖使用get_category_link()函數返回菜單中我的標籤的鏈接。get_category_link()不返回

foreach ($categories as $category) { 
      if ($category->parent == 0) { //Check to see it is a parent 
       $output .= '<li>'; 
       $output .= '<a href="' . get_category_link($category->cat_ID) . '">' . $category->name . '</a>'; //display parent taxonomy category 

      } 
     } 

但它總是返回<a href="">。我可以成功回顯$category->cat_ID,所以我知道它將ID傳入函數,但我不知道它爲什麼會返回空白。

我錯過了什麼嗎?是因爲這些是自定義分類法嗎?他們有slu。子。

回答

2

你需要像這樣的自定義分類:

$tax = 'cars'; 
    $cats = get_terms($tax, ''); 
    if ($cats) { 
    foreach($cats as $cat) { 
     $output .= "<li>"; 
$output .= '<a href="' . esc_attr(get_term_link($cat, $tax)) . '" title="' . sprintf(__("View all posts in %s"), $cat->name) . '" ' . '>' . $cat->name.'</a>'; 
$output .= "</li>"; 
    } 
    } 

雖然你可以輕鬆地添加到腳本的頂部得到所有分類的數組,如果你想送入。

+0

get_terms和get_categories有什麼區別?我覺得我可能不得不重寫我的整個腳本來使用get_terms而不是get_categories。情況會是這樣嗎?謝謝! – drpcken 2011-06-08 01:37:54

+0

啊你好,你回答了我的問題。我需要使用get_terms進行自定義分類。非常感謝你! – drpcken 2011-06-08 04:18:00