织梦dedecms如何实现arclist调用副栏目文章

92建站   2021-03-29   收藏本文

本文介绍了织梦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标签调用副栏目文章的问题。

上面就是织梦调用副栏目文章的介绍,若有疑问可以找小编进一步探讨交流~

展开