您当前的位置:首页 > 后端程序 > 帝国建站 帝国建站

帝国cms如何使当前栏目、文章标题高亮显示

发布时间:10-11  来源:云动网络  作者:云动  点击:

我们在帝国cms网站制作过程中,有时需要让当前栏目或文章标题高亮显示,云动网络现分享如下几种方法,通过灵动标签调用,经测试全部可用,具体代码如下:

灵动标签调用当前文章标题高亮显示
[e:loop={'selfinfo',4,0,0}]
<?
    if (sys_ReturnBqTitleLink($navinfor)=="$bqsr[titleurl]"){
    echo "<li><a href='$bqsr[titleurl]' class='current'>$bqr[title]</a></li>";
    }
    else{
    echo "<li><a href='$bqsr[titleurl]'>$bqr[title]</a></li>";
    }
?>
[/e:loop]

灵动标签调一级栏目高亮显示
[e:loop={'select classid,classname,classpath from [!db.pre!]enewsclass where bclassid=0 and showclass=0 order by myorder',0,24,0}]
<li id="cid<?=$bqr[classid]?>"> <a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" title="<?=$bqr[classname]?>" target="_self"  class="<?=currentPage1($GLOBALS[navclassid],$bqr[classid])?>">
  <?=$bqr[classname]?>
  </a> </li>
[/e:loop]

灵动标签调用当前同级栏目高亮显示
[e:loop={"select classid,classname,classpath from [!db.pre!]enewsclass where bclassid='".$class_r[$GLOBALS[navclassid]][bclassid]."' order by classid limit 0,4 ",0,24,0}]
<li><a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" class="<?=currentPage2($GLOBALS[navclassid],$bqr[classid])?>">
  <?=$bqr[classname]?>
  </a> </li>
[/e:loop]

需调用栏目时,在 e/class/userfun.php 中加入以下代码:
//高亮一级栏目
function currentPage1($classid,$thisid){
        global $class_r;
        $fr=explode('|',$class_r[$classid][featherclass]);
        $topbclassid=$fr[1]?$fr[1]:$classid;//取得第一级栏目id
        if ($topbclassid==$thisid) {
                  echo "current";
                }
                else {
                }
}
//高亮当前同级栏目
function currentPage2($classid,$thisid){
        global $class_r;
        $fr=explode('|',$class_r[$classid][featherclass]);
        $topbclassid=$fr[2]?$fr[2]:$classid;
        if ($topbclassid==$thisid) {
                  echo "current";
                }
                else {
                }
}

其中部分代码详解如下:
and showclass=0 只调用显示出来的栏目
order by myorder 按后台设置栏目的排序方式显示
[e:loop={'selfinfo',4,0,0}] 其中的4为只显示前四条
limit 0,4 从第一条开始,取前四条
current 为高亮显示css样式

更多