帝国导航支持二级栏目高亮(灵动标签)

<li class="<?=$public_r[home]?'active':''?>"><a href="[!--news.url--]">首页</a</li>
<li class="<?=$GLOBALS[navclassid]==0?'active':''?>"><a href="[!--news.url--]">首页</a</li>
[e:loop={'select classid,classname,classpath,sonclass from [!db.pre!]enewsclass where bclassid=0 and showclass=0 order by myorder',0,24,0}]
<li class="dropdown <?=(($GLOBALS[navclassid]==$bqr[classid]) || ($class_r[$GLOBALS[navclassid]][bclassid] == $bqr[classid]))  ?'active':''?>">
    <a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>/" class="dropdown-toggle" <?=$bqr[sonclass]?'data-toggle="dropdown"':''?>><?=$bqr[classname]?><b class="fa fa-angle-down" style="<?=!$bqr[sonclass]?'display:none;':''?>padding-left:4px;"></b></a>
    <?php
    if($bqr[sonclass]){
    ?>
    [showclasstemp]$bqr[classid],14,0,0[/showclasstemp]
    <?php
    }
    ?>
</li>
[/e:loop]


两种方式判断首页高亮,其中使用 $GLOBALS[navclassid] 来判断当前栏目的ID

如果是"0",说明当前栏目没有ID,那么肯定就是首页了。

使用灵动标签,循环输出属于根目录下的一级栏目。

其中:

<?=(($GLOBALS[navclassid]==$bqr[classid]) || ($class_r[$GLOBALS[navclassid]][bclassid] == $bqr[classid]))  ?'active':''?>
用来做当前栏目页面和相应的导航项高亮。 $bqr是通过灵动标签循环出来的每个栏目的ID,如果其与当前栏目相等则高亮之。

但是如果进入了二级栏目,$GLOBALS[navclassid]为二级栏目的ID,所以需要

$class_r[$GLOBALS[navclassid]][bclassid] == $bqr[classid]

来进行判断,

  $class_r 为所有栏目的信息,索引为栏目ID,bclassid为当前栏目的父栏目ID。

那么就可以在二级栏目时判断其父栏目的ID为多少,是否高亮一级栏目选项的高亮了。

  二级栏目通过如下输出:

[showclasstemp]$bqr[classid],14,0,0[/showclasstemp]
  这个标签是专门输出栏目的,$bqr[classid]表示输出当前父栏目下的二级栏目。14代表标签模板的序号。


标签模板代码:
    页面模板内容(*):
    <ul class="dropdown-menu nav_two" style="padding: 0;">
        [!--empirenews.listtemp--]
        <!--list.var1-->
        [!--empirenews.listtemp--]
    </ul>

    列表内容模板(list.var) (*):
    <li><a href="[!--classurl--]" style="border-top:1px solid #e0e0e0;border-bottom: 0;">[!--classname--]</a></li>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值