"景先生毕设|www.jxszl.com

织梦DedeCMS栏目调用时无子栏目不显示同级栏目的方法

2022-10-29 16:29编辑: www.jxszl.com景先生毕设
我们在使用织梦制作网站时经常会遇到网站栏目较多,显示当前栏目下的II级与III级栏目时,使用栏目嵌套标签,但是当III级栏目为空时,会显示同级栏目.从用户体验角度出发,常理情况下也是需要空白的,即II级栏目下的III级栏目如为空时,则不显示.那么如何让织梦在使用调用代码



 更多精彩就在: 51免费论文网|www.jxszl.com 
{dede:channeltype=’son’}

无子栏目时不显示同级栏目呢?今天跟淘站网就跟大家分享I.下解决方法:

DedeCMS栏目调用时无子栏目不显示同级栏目的方法

方法I.

打开:include aglibchannel.lib.php文件.

找到代码(大概在第I.0IX行)


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

改成


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

DedeCMS栏目调用时无子栏目不显示同级栏目的方法

网上可以找到的答案也就是上面这些了,有些站长按照上述方法就解决了,可是有些站长的问题依然没有解决!这是因为要在织梦的channel标签中加上noself=’yes’就可以了!


{dede:channeltype=’son’row=’V’noself=’yes’}

然后在模板中引用实例代码如下:



    {dede:channelartlisttypeid=’I.0’}
    {dede:fieldname=’typename’/}
    {dede:channeltype=’son’noself=’yes’}
  • [field:typename/]

  • {/dede:channel}
    {/dede:channelartlist}


方法II

打开:include aglibchannel.lib.php

找到第I.I.0行,注释掉这段代码,如下:


if($type==son&&$reid!=0&&$totalRow==0)
{
$sql="SELECTid,typename,typedir,isdefault,ispart,defaultname,nameruleII,moresite,siteurl,sitepath
FROM`dede_arctype`WHEREreid=$reidAndishidden<>I.orderbysortrankasclimit0,$line";
$dsql->SetQuery($sql);
$dsql->Execute();
}

DedeCMS栏目调用时无子栏目不显示同级栏目的方法

保存文件.

再刷新I.下代码.

以上两种方法都可以实现DedeCMS栏目调用时无子栏目不显示同级栏目的问题,大家根据实际情况自己选择应用!


原文链接:http://www.jxszl.com/biancheng/dedecms/75440.html