2010-10-24 90 views
4

我想知道是否有人知道如何修改現有的類別小部件,只顯示所選父類別中的類別。 例子:Wordpress小部件如何僅基於選定的父類別顯示子類別?

如果我的類別結構,如:

  • 計算機
    • 筆記本電腦
    • 桌面
    • 軟件
  • 電子
    • 相機
    • 音頻/視頻

如果有人在計算機類查看信息,我想的類別小部件在側邊欄只顯示筆記本,臺式機&軟件..

有沒有辦法做到這一點?有沒有人熟悉一個插件,也許這樣做? 謝謝!

回答

3

感謝您的幫助。我能得到它做這個工作......

<?php 
if (is_category()) { 
    $cat = get_query_var('cat'); 
    $this_category = get_category($cat); 
    $this_category = wp_list_categories('hide_empty=0&hierarchical=true&orderby=id&show_count=0&title_li=&use_desc_for_title=1&child_of='.$this_category->cat_ID."&echo=0"); 
    if($this_category !='<li>No categories</li>') 
    { 
    echo '<h3>Products</h3>'; 
    echo '<ul>'.$this_category.'</ul>'; 
    } 
} 
?> 
5

如何使用這樣的東西? 在單一頁面上,您可以添加來自single.php頁面的電話到新的側邊欄或包含文件...?

即:

<?php if(is_single()) { include(TEMPLATEPATH.'/newsidebar.php'); } ?> 

newsidebar.php

<ul> 
<?php 
$catsy = get_the_category(); 
$myCat = $catsy->cat_ID; 
    wp_list_categories('orderby=id&child_of='.$myCat); 
?> 
</ul> 

這將只顯示類別從當前使用的類別?

即:

,如果目前的類別是5臺//計算機 那麼所有將在列表中顯示的是被

* Laptops 
* Desktops 
* Software 
0

1),只顯示小類:

<?php 
    // check if the page is viewed is a category page. 
if (is_category()) 
{ 
$cur_cat = get_query_var('cat'); 
    if ($cur_cat) 
    { 
     $new_cats = wp_list_categories('echo=false&child_of=' . $cur_cat . '&depth=1&title_li=&&show_count=1&hide_empty=0'); 
     echo '<ul>' . $new_cats . '</ul>'; 
    } 
} 
?> 

2)可顯示所有主要類別:

<?php 
wp_list_categories('depth=1&title_li=&exclude=1&show_count=1&hide_empty=0'); 
?> 

3)顯示所有類別+樹形菜單的子類別:

Use FoCal plugin. 

4)查看此代碼:

http://wpworks.wordpress.com/2011/01/13/displaying-categories-and-subcategories-tree-on-wordpress/ 
相關問題