Wordpress小部件如何仅基于选定的父类别显示子类别?
问题描述:
我想知道是否有人知道如何修改现有的类别小部件,只显示所选父类别中的类别。 例子:Wordpress小部件如何仅基于选定的父类别显示子类别?
如果我的类别结构,如:
- 计算机
- 笔记本电脑
- 桌面
- 软件
- 电子
-
个
- 相机
- 音频/视频
如果有人在计算机类查看信息,我想的类别小部件在侧边栏只显示笔记本,台式机&软件..
有没有办法做到这一点?有没有人熟悉一个插件,也许这样做? 谢谢!
答
感谢您的帮助。我能得到它做这个工作......
<?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>';
}
}
?>
答
如何使用这样的东西? 在单一页面上,您可以添加来自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
答
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/