加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > CMS系统 > Dedecms > 正文

织梦中{dede:channel}无法调用隐藏栏目解决方法

发布时间:2020-12-14 05:17:18 所属栏目:Dedecms 来源:网络整理
导读:dede如何控制隐藏栏目的显示与调用 许多时候有些栏目想在某些页面隐藏,在另外一些页面显示,怎么办? 貌似,织梦的channel标签不能获取隐藏的栏目,于是我自己动手修改channel标签 首先找到include/taglib/channel.lib.php 1. $attlist = "typeid|0,reid|0,

dede如何控制隐藏栏目的显示与调用

许多时候有些栏目想在某些页面隐藏,在另外一些页面显示,怎么办?

貌似,织梦的channel标签不能获取隐藏的栏目,于是我自己动手修改channel标签

首先找到include/taglib/channel.lib.php

1.

$attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|";

修改为:

$attlist = "typeid|0,cacheid|,showhide|no";

2.

在这两句下?

? ? $innertext = $ctag->GetInnerText();

? ? $line = empty($row) ? 100 : $row;

增加:

    $showhideArr = array(

        'yes' => 0,'no' => 1,'both'=> -1,);

    $hideflag = $showhideArr[$showhide];

?

3.

  if($type=='top')

    {

        $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

          From `dede_arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit 0,$line ";

    }

    else if($type=='son')

    {

        if($typeid==0) return '';

        $sql = "SELECT id,sitepath

          From `dede_arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0,$line ";

    }

    else if($type=='self')

    {

        if($reid==0) return '';

        $sql = "SELECT id,sitepath

            FROM `dede_arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0,$line ";

    }

?

修改为:

   if($type=='top')

    {

        $sql = "SELECT id,sitepath

          From `dede_arctype` WHERE reid=0 And ishidden<>$hideflag order by sortrank asc limit 0,sitepath

          From `dede_arctype` WHERE reid='$typeid' And ishidden<>$hideflag order by sortrank asc limit 0,defaultname


(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读