天兴工作室

主题演示站

折腾记录之:调用当前分类下的子分类

最近在折腾zblogphp的分类,分类这东西一级两级都还好,有的客户网站变态一点的有四个层级,玩起来就相当费脑子了...

先转载一篇“十五楼的鸟儿”网站里面的文章,原文地址:http://www.birdol.com/zblogjiaocheng/854.html

将以下代码加入分类页面的模板,浏览时就可以显示当前分类的子分类:

{php}
$str='';
$where=array(array('=','cate_ParentID',$category->ID));        
$array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null);
foreach ($array as $cate){          
$str.='<li><a href="'.$cate->Url.'">'.$cate->Name.'</a></li>';        
}
echo $str;
{/php}

上面这个鸟儿分享的代码可以调用出来当前分类下的子分类,只有一个层级,就是一级分类显示下面的二级分类而不会显示三级分类,有的客户则需要显示出一级分类下面的所有分类。

好吧。

我东抄西抄搞了一段垃圾,勉强能实现:

 {if $category.Level==0} 
    {php}
    $str='';
    $where=array(array('=','cate_RootID',$category->ID));        
    $array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null);
    foreach ($array as $cate){
              $str.='<li><a href="'.$cate->Url.'">'.$cate->Name.'</a></li>';
            }
    echo $str;
    {/php}
    
    {else}
    
        {php}
    $str='';
    $where=array(array('=','cate_RootID',$category->RootID));        
    $array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null);
    foreach ($array as $cate){
              $str.='<li><a href="'.$cate->Url.'">'.$cate->Name.'</a></li>';
            }
    echo $str;
    {/php}
    
    {/if}

上面代码中的“{if $category.Level==0} ”来判断当前分类是否属于顶级分类,如果是顶级分类,则调用分类下的全部子分类,如果当前不是顶级分类,那么就调用当前分类的顶级分类下的全部分类,出来的结果就是不管在哪一个层级,调用的都是这个分类的顶级分类下的全部子分类。

好绕口令,妈蛋。。。

还有更变态的需求等着玩我呢,脑细胞快用光了,逻辑能力差了果然不行。

«    2025年5月    »
1234
567891011
12131415161718
19202122232425
262728293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接

Powered By Z-BlogPHP 1.7.4

天兴工作室主题演示站点,如遇到问题请联系我们的在线qq:207649916咨询