本文介绍了织梦dedecms如何实现arclist调用副栏目文章,解决思路:打开这个文件arclist.lib.php,将教程指出的代码改为新的代码,然后使用{dede:arclist typeid=’2,3,4′}….{ dede:arclist} 这样的代码调用就可以了。
最近一段时间以来,很多时间都在挥舞DEDECMS,为了适应我的应用要求,进行了很多优化。其中,也遇到了很多问题。例如,DEDECMS根据副栏调用文章。
DEDECMS中一个文章可以同时属于两个栏目,即一个主栏目一个副栏目,{dede:arclist} 属性中可以通过typeid进行主栏目有效性筛选,但是有时我们却想根据副栏目进行筛选,查了dedecms的在线用户手册发现没有此功能,最后搜索到一个有效地解决办法。只需修改标签对应的源文件。
查找 dedecmsROOT/include/taglib/arclist.lib.php 文件,大概在第212行代码处。
if($CrossID=='') $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).')'; else $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).','.$CrossID.')';
替换为:
if($CrossID=='') $orwheres[] = ' typeid in ('.GetSonIds($typeid).') or typeid2 in ('.GetSonIds($typeid).')'; else $orwheres[] = ' typeid in ('.GetSonIds($typeid).','.$CrossID.') or typeid2 in ('.GetSonIds($typeid).','.$CrossID.')';
示例:
{dede:arclist typeid=’2,3,4′}….{/dede:arclist}
通过以上办法,有效地解决了DEDECMS最新版本V5.6正式版(2010-08-18)(包括在此前的版本),不支持通过arclist标签调用副栏目文章的问题。
上面就是织梦调用副栏目文章的介绍,若有疑问可以找小编进一步探讨交流~