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

  • A+
所属分类:仿站

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

这样就对了。

 
 
 

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: