dede二次开发:无子栏目时显示同级栏目名问题

以前二次开发的时候,碰到没有子栏目的栏目的时候,模板是共用的,当使用{dede:channelartlist row=7 typeid=5}时,栏目下没有子栏目的shi和,会出现获取空白的情况。找到如下代码: ul{de
 

以前二次开发的时候,碰到没有子栏目的栏目的时候,模板是共用的,当使用{dede:channelartlist row=7 typeid='5'}时,栏目下没有子栏目的shi和,会出现获取空白的情况。找到如下代码:

<ul>
{dede:channelartlist typeid='3'}
   <li class="li_biaoti"><a href="{dede:field name='typeurl'/}" >{dede:field name='typename'/}</a></li>
  {dede:channel type='son' noself='yes'}    
    <li><a href="[field:typelink/]">[field:typename/]</a></li>
  {/dede:channel}
 {/dede:channelartlist}   
</ul>

但是这个有缺点,如果没有子栏目下面,这段代码会把所有同级的栏目都取出来,这样页面就出现问题了。其实这个可以加入一个限定条件。需要修改include\taglib\channel.lib.php文件,这个文件代码注释很详细:

查找
if($type=='son' && $reid!=0 && $totalRow==0)
在条件判断部分,加入红色部分
if($type=='son' && $reid!=0 && $totalRow==0 && $noself=='')

这样就对了。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐