帝国模板之家为广大用户提供专业、一站式建站服务。

帝国cms教程

帝国cms教程栏目,提供精品建站,仿站,二次开发,安装,标签使用等图文教程,帮助建设和管理好你的帝国cms站点。

当前位置:首页 > 教程 > 帝国cms教程 > 正文

帝国cms自定义函数递归算法调用无限级栏目导航菜单

帝国模板之家 2020-10-23 帝国cms教程 评论

本文主要介绍使用帝国cms自定义函数来调用无限级栏目导航菜单,基于递归算法实现。具体操作如下:

1.在/e/class/userfun.php 中添加如下函数:

function showallmenu($bclassid,$i=0,$m=0){
    global $empire,$dbtbpre,$public_r;
    $bclassid=(int)$bclassid;
    $i=(int)$i;
    if(!$i){$i=1;}
    $d=$i;
    if($d>2){$d=2;}
    $st='';
    if($d>1&&$m==1){
        $st=' start';
    }
    $returnstr='';
    $i+=1;
    $m=0;
    $sql=$empire->query("select classid,classname,bclassid,islast,classpath from {$dbtbpre}enewsclass where bclassid='$bclassid' and wburl='' order by myorder,classid");
    while($r=$empire->fetch($sql)){
        $returnstr.='<li class="tm'.$d.$st.'">';
        $classurl=$public_r['newsurl'].$r['classpath'].'/';
        $m+=1;
        if($r['islast']){
            $qstr='<span class="facefont wj">&C</span>';
            $lian='';
            $hstr='';

        }else{
            $qstr='<span class="facefont wjj">&D</span>';
            $lian='class="lian"';
            $hstr='<span class="facefont hao">-</span>';
        }


        $returnstr.=$qstr.'<a href="'.$classurl.'" '.$lian.'>'.$exp.$r['classname'].'</a>'.$hstr;
        if(empty($r['islast']))
        {
            $moreclassstr=showallmenu($r['classid'],$i,$m);
            $returnstr.='<ul class="tmu2" style="display:none">'.$moreclassstr.'</ul>';
        }
        $returnstr.="</li>";
    }
    return $returnstr;
}

2.在帝国模板中调用函数:

<?=showallmenu(0)?>

推荐教程:帝国CMS教程

以上就是帝国cms自定义函数调用无限级栏目导航菜单的方法,更多相关内容请关注帝国模板之家

这世上无忧无虑的人,反而相对寿命会长点。

已有 位小伙伴发表了看法

欢迎 发表评论

  • 匿名发表

关于

帝国cms模板

网页插件

帝国模板之家 | www.moyouyouw.cn

本站所有模板/文章除标明原创外,均来自网络转载,版权归原作者所有,如果有侵犯到您的权益,请联系站长删除,谢谢! 寻找帝国cms模板首选帝国模板之家,用心做站,上线至今广受好评,值得信赖!

  • 交流群1:帝国cms交流群1
  • 交流群2:帝国cms交流群2
在线QQ 给我留言