首页 DedeCms正文

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

Admin DedeCms 2021-01-12 16:01:13 33

以前二次开发的时候,碰到没有子栏目的栏目的时候,模板是共用的,当使用{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=='')

这样就对了。

Copyright ©2019-2020.Powered by©编程脚本学习网 苏ICP备17028197号