欢迎访问全国企业网站设计NO.1网站开发商平台 付款方式
主页 > 网站建设 > 建站知识 > dede:channel标签指定typeid时 currentstyle无效失效的修

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

POST TIME:2020-10-09

{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=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!='' )