dedecms怎么设置当三级栏目为空时不显示同级栏目
问题描述:在栏目内容页中,显示当前栏目下面的二级与三级栏目时,使用栏目嵌套标签,当三级栏目为空时,会显地同级栏目。如图-1
图-1
而我要显示的是每个二级栏目下面的三级栏目,如为空时,则不显示。
解决方法:
修改:dede栏目标签 : {dede:channel } 。
先找到标签文件:根目录\include\taglib\channel.lib.php 。并打开。
找到第82行。按图中显示,复制一份代码,并在后面粘贴。如图-2
新增加的代码如下:
else if($type=='child')
{
if($typeid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `#@__arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
保存文件。
再刷新一下代码。就OK了!如图-3
附出一下能循环显示一级与二级菜单的标签嵌套代码,以供大家收藏!
{dede:channelartlist row='10' typeid='top'}
<a href='{dede:field.typeurl/}' class="b"><span>{dede:field.typename/}</span></a><br />
{dede:channel type='child' }
二级:<a href='[field:typeurl/]'><span>[field:typename/]</span></a><br />
{/dede:channel}
{/dede:channelartlist}
注:
1、channelartlist 这个标签中的 typeid='top' 参数,top表示是顶层,也就是显示最顶级的栏目。
如果你要用这个标签显示当前栏目下面的二级栏目,可以默认为空就行了,如:typeid=''。
希望能对大家有所帮助!
原创文章,转载请注明: 转载自广州SEO
本文链接地址: dedecms怎么设置当三级栏目为空时不显示同级栏目