百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>织梦CMS教程> 织梦DedeCMS栏目调用时无子栏目不显示同级栏目的办法
分享文章到:

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

发布时间:09/08 来源:未知 浏览: 关键词:
我们在使用织梦制作网站时经常会遇到网站栏目较多,显示当前栏目下的二级与三级栏目时,使用栏目嵌套标签,但是当三级栏目为空时,会显示同级栏目。从用户体验角度出发,常理情况下也是需要空白的,即二级栏目下的三级栏目如为空时,则不显示。那么如何让织梦在使用调用代码
 
 
{dede:channel type=’son’}
 
无子栏目时不显示同级栏目呢?今天跟淘站网就跟大家分享一下解决方法:
 
DedeCMS栏目调用时无子栏目不显示同级栏目的方法
 
方法一
 
打开:include\taglib\channel.lib.php文件。
 
找到代码(大概在第109行)
 
 
if($type=='son' && $reid!=0 && $totalRow==0)
 
改成
 
 
if($type==’son’ && $reid!=0 && $totalRow==0 && $noself==’’)
 
DedeCMS栏目调用时无子栏目不显示同级栏目的方法
 
网上可以找到的答案也就是上面这些了,有些站长按照上述方法就解决了,可是有些站长的问题依然没有解决!这是因为要在织梦的channel标签中加上noself=’yes’就可以了!
 
 
{dede:channel type=’son’ row=’5’ noself=’yes’}
 
然后在模板中引用实例代码如下:
 
 
  <ul>
  {dede:channelartlist typeid=’10’}
      <li class="li_biaoti"><a class="s" href="{dede:field name=’typeurl’/}" >{dede:field name=’typename’/}</a></li>
        {dede:channel type=’son’ noself=’yes’}
          <li><a class="t" href="[field:typelink/]">[field:typename/]</a></li>
        {/dede:channel}
    {/dede:channelartlist}
  </ul>
 
方法二
 
打开:include\taglib\channel.lib.php
 
找到第110行,注释掉这段代码,如下:
 
 
  if($type=='son' && $reid!=0 && $totalRow==0)
        {
                $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
                        FROM `dede_arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
                $dsql->SetQuery($sql);
            $dsql->Execute();
        }
 
DedeCMS栏目调用时无子栏目不显示同级栏目的方法
 
保存文件。
 
再刷新一下代码。
 
以上两种方法都可以实现DedeCMS栏目调用时无子栏目不显示同级栏目的问题,大家根据实际情况自己选择应用!
 
打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有156人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板