评论

收藏

[帝国CMS] 完美解决:帝国cms当前栏目高亮 自动适应各级栏目

建站程序 建站程序 发布于:2021-07-25 21:53 | 阅读数:381 | 评论:0

帝国官网论坛有很多关于当前栏目高亮的代码,但很多都要修改程序文件,容易影响程序的稳定。而且一旦重装程序,势必又要重新设置。非常麻烦。网上关于高亮的代码也大都是从官网论坛抄的。说是原创,其实就是抄的。
本代码综合了所有的优点。不修改程序文件。只须将代码粘贴到相应模板位置即可。修改方便。自动适应各级栏目。
该代码有如下优点:
1.不修改程序文件,将代码粘贴到网站模板上即可。
2.自动适当各级栏目。不论是一级还是二级还是三级,都可以实现高亮。
3.自动寻找当前栏目ID。无须人工指定。相比官方代码,更实用。
4.支持栏目自定义排序。
5.支持隐藏栏目。
<li><a href="[!--news.url--]">网站首页</a></li>

[e:loop={"select classid,classname from {$dbtbpre}enewsclass where bclassid='$this_bclass' and showclass=0 order by myorder",0,24,0}]

  <?php

$classurl=sys_ReturnBqClassname($bqr,9);//取得栏目地址

$bgcolor="";

if($bqr[classid]==$GLOBALS[navclassid])//当前栏目ID

{

$bgcolor="#6CF";

} 

?>

  <li style="background-color:<?=$bgcolor?>"> <a href="<?=$classurl?>">

    <?=$bqr[classname]?>

    </a> </li>

  [/e:loop]

使用方法:
对于老手来说,这简单是小菜一碟。但对于新手来说,这个代码怎么放,放在哪里,却是一对雾水。现来老李来教教大家。
1.假如你的导航代码如下,并做好了css样式。
<div id="nav">

<ul>

  <li><a href="#" id="current">网站首页</a></li>

  <li><a href="#">栏目一</a></li>

  <li><a href="#">栏目二</a></li>

  <li><a href="#">栏目三</a></li>

  <li><a href="#">栏目四</a></li>

  </ul>

 

</div>

2.将上述代码复制后站粘贴于<ul></ul>之中。原来的<li>代码要全部删除。最终效果如下:
<div id="nav">

<ul>

<li><a href="[!--news.url--]">网站首页</a></li>

[e:loop={"select classid,classname from {$dbtbpre}enewsclass where bclassid='$this_bclass' and showclass=0 order by myorder",0,24,0}]

  <?php

$classurl=sys_ReturnBqClassname($bqr,9);//取得栏目地址

$bgcolor="";

if($bqr[classid]==$GLOBALS[navclassid])//当前栏目ID

{

$bgcolor="#6CF";

} 

?>

  <li style="background-color:<?=$bgcolor?>"> <a href="<?=$classurl?>">

    <?=$bqr[classname]?>

    </a> </li>

  [/e:loop]  

  </ul>

 

</div>
3.以上代码中,$bgcolor="#6CF";为高亮时背景颜色修改。

关注下面的标签,发现更多相似文章