DedeCMS子栏目调用currentstyle属性不支持typeid的解决方案

前端之家收集整理的这篇文章主要介绍了DedeCMS子栏目调用currentstyle属性不支持typeid的解决方案前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。编程之家小编现在分享给大家,也给大家做个参考。

我们在使用织梦建站的时候,导航栏经常会用到 channel 标签来调子栏目,但有的时候需要调用指定栏目的子栏目,而且还需要配合 currentstyle 属性做当前字栏目高亮的功能,但是织梦默认情况下是 currentstyle 对 typeid 是无效的,此时就需要做一下修改,来让它支持 typeid。修改 include/taglib/channel.lib.PHP,找到代码

if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )

修改为:

if( ( $row['id']== $refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )

调用标签举例:

{dede:channel typeid ='3' type ='son' currentstyle="<li><a href='~typelink~' class='on'>~typename~</a></li>"}

<li><a href="[field:typelink/]" title="[field:typename/]">[field:typename/]</a></li>

{/dede:channel}

效果:当前栏目下的列表会添加一个 class="on"属性,可以配合 css 样式做当前栏目高亮效果

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

猜你在找的Dedecms相关文章