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

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,reid|0,row|100,col|1,type|son,currentstyle|,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,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,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,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 \"; }

修改为:

if($type==\'top\') { $sql = \"SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `dede_arctype` WHERE reid=0 And ishidden<>$hideflag order by sortrank asc limit 0, $line \"; } else if($type==\'son\') { if($typeid==0) return \'\'; $sql = \"SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `dede_arctype` WHERE reid=\'$typeid\' And ishidden<>$hideflag order by sortrank asc limit 0, $line \"; } else if($type==\'self\') { if($reid==0) return \'\'; $sql = \"SELECT id,typename,typedir,isdefault,ispart,defaultname
温馨提示:本文最后更新于2022/10/20 02:48:06若文章内容或图片失效,请留言联系站长反馈!
!
也想出现在这里? 联系我们
创意广告
© 版权声明
THE END
喜欢本文内容,请点击【点赞】【分享】【收藏】
点赞0赞赏 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容