dede取子栏目时重复显示同级栏目的终极解决方法

温馨提示:DedeCMS用户请及时前往织梦官网处理官方版权事宜。

使用channelartlist标签时,当栏目没有子栏目是,会出现重复同级栏目的问题,解决方法如下:

先看下面的代码

{dede:channelartlist typeid='2'}
	{dede:type}
	<tr>
	<td><a href="[field:typelink /]">[field:typename/]</a></td>
	</tr>
	{/dede:type}
	{dede:channel type='son' noself='yes'}//这个属性是eims当中的在include/taglib/下面的channel.lib.php文件当中
	<tr>
	<td><a href="[field:typelink/]">[field:typename/]</a></td>
	</tr>
	{/dede:channel}
{/dede:channelartlist}

此代码运行结果可以看到如果存在子类那么能够取出子类栏目这是因为为channel标签添加了noself='yes'的属性(这个属性是eims当中的在include/taglib/下面的channel.lib.php文件当中)

解决方法:

如果是dedecms5.6/5.7则需要做以下修改 还是打开那个channel.lib.php文件找到

找到

if($type=='son' && $reid!=0 && $totalRow==0)

改成

if($type=='son' && $reid!=0 && $totalRow==0 && $noself=='')

至此,方法解决。

本文属原创,转载请注明原文:http://www.zhimatong.com/jiaocheng/339.html

为保证教程的实用性及扩大知识面覆盖,如果您有相似问题而未解决,可联系在线客服免费技术支持。

内容有用

相关阅读
关键词:

    联系
    顾问

    在线
    客服
    购物车
    账号登录

    没有账号?立即注册

    忘记密码

    登录即同意用户协议没有账号? 立即注册
    账号注册
    我已阅读并同意用户协议
    立即注册
    注册即同意用户协议已有账号? 立即登录
    找回密码

    操作步骤:邮箱验证->设置新密码

    注册即同意用户协议已有账号? 立即登录