2010-10-24 94 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/ 
相关问题