在制作织梦dedecms模板的时候,在使用 dede:channelartlist 自动调用栏目内容时,经常会遇到某些栏目不需要调用,比如“关于我们”、“联系地址”等无持续更新的栏目。要K u u C i \ Z _ S想在 deX h B } | H % \de:channelartlist 调用时排出某些栏目,这需要修改dede源码,让 dedO & Q h f \ W G {e:channelartlist 排除指定typeid。

打开\include\taglib\channelartlist.lib.php文件

找到

$attlist = ‘typeid|0,row|20,cacheid|’;

修改为:

$attlist = ‘typeid|0,row|20,cacheid|,notypeidV m +|0′; // 此处添加了一个所要排除typeid的参数—notypeid

找到

$dsql->SetQuery(“Selectid,typenq t ?ame,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,{ b r 0 ; \ 8sitepath from `dede_arctype` wh, f $ = oere $tpsql order by sortrank asc limit $tota3 h ~ olnum”);

在其前面添加

//否定指定ID

if($notypeid!=0) {

$tpsql = $tpsql.”and not(id in($notypeid)) “;

}

模板调用:

{dede:channelartlis# y et typeid =’7′ notypeid=’8′}

其中notypeid=’8′ 中的 8 为 7 的子栏目即生效。

当然I d A + U @ s /notC 7 ^ j ! { :ypeid和typeid也可以分开各自使用.

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请D F R联系网站客服处理。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注