首页 > CMS > 织梦DEDE > 正文

dede:channel标签指定typeid时 currentstyle无效失效的修复办法

2024-07-12 08:48:52
字体:
来源:转载
供稿:网友
这篇文章主要为大家详细介绍了dede:channel标签指定typeid时 currentstyle无效失效的修复办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

     在用织梦CMS做织梦模板的时候,我们经常会遇到currentstyle的调用,下面武林网给出两段代码来比较一下:

{dede:channel type='son' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}<li><a href='[field:typelink/]'>[field:typename/]</a> </li>{/dede:channel}

这段代码在调用方式currentstyle时是有效的

但是下面这段代码:

{dede:channel type='son' row='8' typeid=1 currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}<li><a href='[field:typelink/]'>[field:typename/]</a> </li>{/dede:channel}

这种调用方式currentstyle就无效了,大家看出什么不同了没有?是的第二段代码比第一段代码多了一 “typeid=1”,就是这一小段代码导致第二段代码里currentstyle就无效。我们在织梦官方的论坛里看到有人说,把typeid=xxx改成channelid=1,这样的说法简直是无稽之谈。下面织梦模板网给出

完美解决办法

修改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时 currentstyle无效失效的修复办法的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持武林网。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表