zoukankan      html  css  js  c++  java
  • dede:channelartlist currentstyle高亮显示

      我们在用DEDECMS建站时,常常会做二级栏目的功能,既要用到二级栏目,也就要通过DEDE标签再套标签的方式来实现调用,而DEDECMS多层标签调用只支持channelartlist,也就是说我们只能通过dede:channelartlist标签才能调出二级栏目,我们用dede:channelartlist能顺利的将信息调出来,但是如果我们要设置当前所在栏目高亮显示的功能时,currentstyle属性将不起作用,下面我们就来解决channelartlist currentstyle高亮显示的问题。
      1、找到“/include/taglib/channelartlist.php”这个文件;
      2、找到这行代码:https://www.exiudaojia.com
      1
      $pv->Fields['typeurl']=GetOneTypeUrlA($typeids[$i]);
      3、在这行代码后加入代码:
      1
      if($typeids[$i]['id']==$refObj->TypeLink->TypeInfos['id']||$typeids[$i]['id']==$refObj->TypeLink->TypeInfos['topid'])
      2
      {
      3
      $pv->Fields['currentstyle']=$currentstyle?$currentstyle:'class="current"';
      4
      }
      5
      else{
      6
      $pv->Fields['currentstyle']='';
      7
      }
      4、调用方法:
      1
      {dede:channelartlist typeid='top'}
      2
      <li{dede:field.currentstyle/}>
      3
      <a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a>
      4
      </li>
      5
      {/dede:channelartlist}https://www.exiudaojia.com
      决dede:channelartlist标签无法使用currentstyle的问题。
      另外需要注意的是<li{dede:field.currentstyle/}>这段代码中,请不要自作聪明的加上class="{dede:field.currentstyle/}",因为最先加的一段代码中就判断了,如果是当然栏目,系统就会自动输出“class='current'”,照本文原样复制,即可解决这个问题。

  • 相关阅读:
    Python之路Day11
    Python之路Day10
    Python中需要注意的一些小坑
    Python之路Day09
    Python之路Day08
    关于谷歌浏览器安装非官方商城插件
    Python之路Day07
    Python之路Day06
    Python之路Day05
    Python 之路Day04
  • 原文地址:https://www.cnblogs.com/zqw111/p/13083488.html
Copyright © 2011-2022 走看看