前言
最近一段时间,有一个问题困扰站长和小编已经很久一直无法得到解决。
早前用户反馈,在dedecms中的文章在选择幅栏目后,在其对应的幅栏目列表中可以显示该文章,但在arclist标签中却无法显示该文章。
首先我们先了解一下什么是arclist标签,arclist标签的功能是获取指定文档列表,适用的范围为全局。
如果想对arclist标签的语法学习可以搜索:织梦(DedeCMS)标签手册学习。
原因
造成织梦(DeDecms)arclist标签无法调用副栏目文章原因:
由于写法错误,导致arclist标签在使用了flag属性时会失效的问题。
解决方法
DedeCMS最新版5.7SP1 织梦(DeDecms)arclist标签无法调用副栏目文章的解决方法:
文本编辑器打开文件目录:/include/taglib/arclist.lib.php
查找:
if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')'; else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';
修改为:
if($CrossID=='') $orwheres[] = ' (arc.typeid IN ('.GetSonIds($typeid).') OR arc.typeid2 IN ('.GetSonIds($typeid).')) '; else $orwheres[] = ' (arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.') OR arc.typeid2 IN ('.GetSonIds($typeid).','.$CrossID.')) ';
注:保存后如果你是生成静态的,请生成相关的页面。如果是动态的,请更新系统缓存。