当前位置:数码通 > 硬件

ZblogPHP调用指定类别下的子类别,一级类别下的所有类别

来源于 数码通 2023-10-02 04:54

在类别页面的模板中添加以下代码,浏览时即可显示当前类别的子类别:

{php}
$str='';
$where=array(array('=','cate_ParentID',$category->ID));
$array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null);
foreach($array 作为$cate){
$str.='
  • 网址.'">'.$cate->名称.'
  • '; } 回声 $str; {/php}

    上面的代码可以调出当前分类下的子分类。只有一个级别,即第一级类别显示下面的第二级类别,但不显示第三级类别。有些客户需要显示下面的一级类别。所有类别。

    可以通过以下方式实现:

    {如果$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 作为$cate){
    $str.='
  • 网址.'">'.$cate->名称.'
  • '; } 回声 $str; {/php} {别的} ​​ {php} $str=''; $where=array(array('=','cate_RootID',$category->RootID)); $array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null);foreach($array 作为$cate){ $str.='
  • 网址.'">'.$cate->名称.'
  • '; } 上面代码中的 echo $str;{/php}{/if}

    "{if $category.Level==0}" 用于判断当前类别是否属于顶级类别。如果是顶级类别,则调用所有子类别,如果当前类别不是顶级类别,则调用当前类别顶级类别下的所有类别。结果就是无论是哪一级,都会调用该类别顶级类别下的所有子类别。

    以上内容转载自网络,但上面第二段代码有问题。如果将代码放在文章页面模板中,就会报错。这是因为zblog文章页面和列表页面使用某些变量的方法不同。 ,所以我们需要替换$category。与 $article.Category。只需将 $Category-> 替换为 $article->Category-> 即可。

    登录后参与评论