代理加盟

2023全新代理计划,一站式模板建站,铜牌代理低至699元送终身VIP,独立代理后台,自营贴牌。

您现在的位置: 麦站网 > 织梦大学 > 使用教程 >

DedeCMS调用三级栏目无子栏目取同级修正

来源:本站原创 发布时间:2019-03-30 00:00:00热度:我要评论(0

麦站模板建站平台(10年经验),服务数万家企业,固定透明报价。域名注册、主机/服务器、网站源码一站式服务。实体公司,专业团队,值得选择!超过1000套模板已登记版权,合规合法建站,规避版权风险!【点击获取方案】

        用DedeCMS做三级栏目的网站建设时,会经常需要调用三级栏目,并不需要太多二次开发,用channelartlist标签就能调用了,比如调用栏目id为6的子栏目然后再调用子栏目的子栏目,有多少个一级栏目就写多少次,修改一下typeid即可,虽然稍微麻烦了点,总比大串的代码强多了。写法如下:

{dede:channelartlist typeid = '6'}
<li><a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a>
 <p class="subnav">
 {dede:channel type='son'}
 <a href="[field:typelink/]">[field:typename/]</a>
 {/dede:channel}
 </p>
</li>
{/dede:channelartlist}

        这样就解决了三级栏目调用的问题,但是当栏目没有子栏目的时候,默认调用同级栏目,源程序估计认为这样的展现比较好,但实际上体验非常不好。下面秀站网提供修正方法。

channel标签无子栏目调用同级栏目

↑上面三个栏目没有子栏目,channel标签调用了同级栏目名

        打开 /include/taglib/channel.lib.php ,找到

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

        修改为

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

        channel标签中加上 noself='yes' 即可。

{dede:channel type='son' row='5' noself='yes'}

    转载请注明来源网址:https://www.xiuzhanwang.com/dedecms_jq/1299.html

    发表评论

    评论列表(条)

       
      QQ在线咨询
      VIP限时特惠