DedeMS内容列表标签无法调用副栏目文章的解决办法

最近,发现dedecms中的文章在选择幅栏目后,在其对应的幅栏目列表页中可以显示该文章,但在全局的arclist 标签中却无法显示该文章,于是在网上找了很多解决办法,解决思路都是一样,但写法却写错了,导致arclist标签在使用了flag属性时会失效的问题。于是我将

最近,发现dedecms中的文章在选择幅栏目后,在其对应的幅栏目列表页中可以显示该文章,但在全局的arclist 标签中却无法显示该文章,于是在网上找了很多解决办法,解决思路都是一样,但写法却写错了,导致arclist标签在使用了flag属性时会失效的问题。于是我将写法进行了修正,具体操作方法如下:

打开/include/taglib/arclist.lib.php文件,找到大概第295-296行,查找以下两行代码:

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.’)) ‘;

修改完成后就可以了,保存后如果你是生成静态的,请重新生成静态的。如果是动态的,请更新系统缓存。然后就可以看到调用的效果了。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

很多朋友不想要默认模板主页里踩踩、评论,只留下会员登录,可以做如下调整:1、打开/templets/default/index.htm文件,删除148行-166行的代码:dd id=loading 正在载入,请稍候..…