我想顯示所有類別的列表,使用他們的層次結構。我想在點擊類別時使用jquery來操作其他對象,所以我需要刪除默認添加的鏈接。是否有替代wp_list_categories
wp_list_categories能夠完美地自動添加子類別的層次結構並添加嵌套列表。我只是不想要默認添加的鏈接。
是否有替代wp_list_categories這不給每個類別鏈接到其各自的頁面?
當我嘗試get_categories()時,它不尊重類別的層次結構。
使用最新的WP版本。
我想顯示所有類別的列表,使用他們的層次結構。我想在點擊類別時使用jquery來操作其他對象,所以我需要刪除默認添加的鏈接。是否有替代wp_list_categories
wp_list_categories能夠完美地自動添加子類別的層次結構並添加嵌套列表。我只是不想要默認添加的鏈接。
是否有替代wp_list_categories這不給每個類別鏈接到其各自的頁面?
當我嘗試get_categories()時,它不尊重類別的層次結構。
使用最新的WP版本。
德wp_list_categories()
函數的輸出是通過一個過濾器,你可以用它來修改生成的HTML傳遞:
$output = apply_filters('wp_list_categories', $output, $args);
如果要真正地修改由函數生成的HTML代碼,你可以擴展Walker_Category
類,一個很好的解釋可以在這裏找到http://scribu.net/wordpress/extending-the-category-walker.html
Walker_Category類是最終爲我工作。它具備了我製作自定義列表所需的所有槓桿。
但是,我只是想發佈我的第一次嘗試,這對一個簡單的列表工作得很好。它使用嵌套循環。
<div class="tab-row">
<?php $args = array(
'taxonomy' => 'taxonomyName',
'parent' => 0
);
$categories = get_categories($args);
$catid = array();
foreach($categories as $category) {
echo '<ul class="parent-tab"><div class="parent-item">' . $category->name . '</div>';
array_push($catid, $category->term_id);
echo '</ul>';
} ?>
</div>
<div class="child-row">
<?php
$countStop = count($categories);
$i = 0;
while ($i < $countStop) {
echo "<ul class='child-list'>";
$args = array(
'taxonomy' => 'taxonomyName',
'parent' => $catid[$i]
);
$categories = get_categories($args);
foreach($categories as $category) {
echo '<li class="child-item">' . $category->name .'</li>';
}
echo "</ul>";
$i++;
}
?>
</div>
我用get_categories(),它消除了鏈接,並只在第一個循環顯示的父母創建了我的分類層次,並在嵌套循環,通過檢索父ID拉出認爲父母的孩子。