织梦中,一篇文章A选择了副栏目L1和L2,但在副栏目L1和L2中,用arclist标签调用不出来的A,如何解决,网上有很多解决办法,但解决的都是文章只选择一个副栏目的问题,如果文章A选择多个副栏目,则不能解决该问题,以下是解决多个副栏目arclist调用文章的办法
工具/原料
-
dedecms 根目录/include/taglib/arclist.lib.php文件
方法/步骤
-
打开include/taglib/arclist.lib.php,找到296行:
if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')';
else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';
-
2
替换成以下即可:
if($CrossID=='')
$orwheres[] = ' (arc.typeid IN ('.GetSonIds($typeid).') OR arc.typeid2 IN ('.GetSonIds($typeid).') or FIND_IN_SET('.$typeid .', arc.typeid2)>0)';
else
$orwheres[] = ' (arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.') OR arc.typeid2 IN ('.GetSonIds($typeid).','.$CrossID.') or FIND_IN_SET('.$typeid .',arc.typeid2)>0) ';
-
3
然后再更新一下系统缓存即可。