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

使用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==‘‘)

至此,方法解决。

时间: 2024-10-29 00:04:51

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

dedecms当二级栏目为空时,不显示同级栏目的修改方法

我们在使用织梦系统制作网站时经常会遇到网站栏目较多,显示当前栏目下的二级与三级栏目时,使用栏目嵌套标签,但是当三级栏目为空时,会显示同级栏目.从用户体验角度出发,常理情况下也是需要空白的,即二级栏目下的三级栏目如为空时,则不显示.那么如何让织梦{dede:channel type='son'}无子栏目时不显示同级栏目呢?今天青岛做网站就跟大家分享一下解决方法? 方法一: 打开:include\taglib\channel.lib.php文件. 找到 if($type=='son' && $

PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法

PL/SQL查询时,如果Number(17)以上的大数,会显示为科学计数法 解决方法: TOOLS->PREFERENCES->WINDOW TYPE->SQL WINDOW下选中Number fields to_char即可. 原文地址:https://www.cnblogs.com/mingforyou/p/8342692.html

水晶报表 Crystal Report 调用存储过程时出错 找不到表 ,解决方法。

用 CrystalReportViewer1 控件在asp.net的网页上显示报表,如果做报表时调用数据表数据的方式调用是可以成功的,但报表是用存储过程获取数据方式会出现以下错误: 找不到表'RptOpenCheck;1' . 文件 G:\TEMP\FO-OpenCheck {6D191F06-DECF-4A25-88FC-8553E3D435AA}.rpt 内出错: 找不到表. Error: 未将对象引用设置到对象的实例. The table 'RptOpenCheck;1' could no

微信二次分享不显示摘要和图片的解决方法

微信二次分享不显示摘要和图片的解决方法 解决不显示摘要和图片的问题,需要调用微信公众号的js-sdk的api ,需要前端和后台的配合, 后台需要返回 appid (公众号的appid ) . timestamp (生成签名的时间戳) .nonceStr (签名的随机字符串) . signature (签名* 可能出错): 1.绑定域名 先登录微信公众平台进入"公众号设置"的"功能设置"里填写"js接口安全域名".(特别提示不需要加上http或者h

VIM显示utf-8文档乱码解决方法

1.相关基础知识介绍 在Vim中,有四个与编码有关的选项,它们是:fileencodings.fileencoding.encoding和termencoding.在实际使用中,任何一个选项出现错误,都会导致出现乱码.因此,每一个Vim用户都应该明确这四个选项的含义.下面,我们详细介绍一下这四个选项的含义和作用. (1)encoding encoding是Vim内部使用的字符编码方式.当我们设置了encoding之后,Vim内部所有的buffer.寄存器.脚本中的字符串等,全都使用这个编码.Vi

关于javac编译时出现“非法字符:\65279”的解决方法

一般用UE或记事本编辑过的UTF-8的文件头会加入BOM标识,该标识由3个char组成.在UTF-8的标准里该BOM标识是可有可无的,Sun 的javac 在编译带有BOM的UTF-8的格式的文件时会出现"非法字符:\65279"的错误,但是用Eclipse进行编译却没有问题,原因在于Eclipse使用的是自己的JDT,而非javac,关于JDT的描述可以到eclipse的官网上去查看. 出现这种情况时,有两种解决方法: a) 利用UE.Editplus等文本编辑器重新保存文件为不带B

【Mongodb教程 第一课补加课2 】MongoDB下,启动服务时,出现“服务没有响应控制功能”解决方法

如图,如果通过下列代码,添加服务后,使用net start命令出现这样的问题时,可以参考下我的解决方法. D:\MongoDB>mongod --dbpath D:\MongoDB\Data --logpath D:\MongoDB\Log\MongoDB.log --logappend --serviceName MongoDB --auth --install 解决方法: 出现这个问题一般是路径有问题. 1)请注意你所有的路径没有错,包括mongod所在路径,日志所在路径等: 2)不要加入多

svn查看日志(show log)显示时间为1970的解决方法

问题: 在修改文件后show log无法显示日志,上面的时间会自动在2016年和1970年间跳,而且设置不了时间.解决方法:1.编辑svnserve.conf,设置“anon-access=none” 2.在authz中添加 [/]* = r 3,清理svn的cache 即可 svn查看日志(show log)显示时间为1970的解决方法,布布扣,bubuko.com

chrome显示12px以下字体的解决方法

demo如下: <!doctype html> <html> <head> <title>chrome显示12px以下字体的解决方法</title> </head> <style type="text/css"> * { margin: 0px; padding: 0px; font-family: "微软雅黑"; } .px12 { font-size: 12px; } .px10