本文主要介绍了织梦dedecms解除dede:channelartlist指定typeid,解决思路:打开这个文件channelartlist.lib.php,找到相关代码,改为教程里面给出的新的语句,就可以需要了,推荐给想要实现这个功能的朋友。
在做网站织梦模板时,在使用dede:channelartlist自行调用频道栏目信息时,经常会碰着有些频道栏目多余调用,就象“公司介绍”、“约见地址”等无意义更新的频道栏目。要想在dede:channelartlist调用时避免有些频道栏目,这必需改动dede源代码,让dede:channelartlist消除特定typeid。
下面是修改方法:
找到 \include\taglib\channelartlist.lib.php, 查找 $attlist
将
$attlist = 'typeid|0,row|20,cacheid|';
修改为:
$attlist = 'typeid|0,row|20,cacheid|,notypeid|0'; // 此处添加了一个所要解除typeid的参数—notypeid
再查找:
$dsql->SetQuery("Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath from `idea_arctype` where $tpsql order by sortrank asc limit $totalnum");
在其前面添加(留意是在前面添加):
//否认指定ID if($notypeid!=0) { $tpsql = $tpsql."and not(id in($notypeid)) "; }
修改文件后,再模板调用时:
{dede:channelartlist typeid ='1' notypeid='2,3,4,5'}
其中notypeid=’2,3,4,5′ 中的 2,3,4,5 为 1 的子栏目即见效。
上面就是织梦指定typeid的介绍,若有疑问可以找小编进一步探讨交流~