提供zblog模板_zblog主题_wordpress模板的下载和定制

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

天兴工作室 2016-08-31 23:18 zblogphp教程 5709 0 评论


最近在折腾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} ”来判断当前分类是否属于顶级分类,如果是顶级分类,则调用分类下的全部子分类,如果当前不是顶级分类,那么就调用当前分类的顶级分类下的全部分类,出来的结果就是不管在哪一个层级,调用的都是这个分类的顶级分类下的全部子分类。

好绕口令,妈蛋。。。

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


没有找到能解决你问题的教程?

您可以试着搜索一下或者直接在线提问。我们也提供收费技术支持,有需要可以在线联系我们。

在线提问 在线客服

欢迎 发表评论: 取消回复

请填写验证码
  • 最新文章
  • 热文排行
  • 最多评论
标签聚合
  • 登 录
  • 注册账号 忘记密码?
  • 注 册
  • 已有账号?直接登录 忘记密码?
  • 社交账号登录