织梦dedecmsarclist标签无法调用副栏目文章的解决办法
最近发现DEDECMS/’ target=’_blank’>dedecms中的文章在选择: ^ K ? ? 3 d ] [幅栏目后,
在其对应的幅栏目列表中可以显示该文章,但在arclist 标签中却无法显示该文章,
网上找了很多,解决办法都一样,但写法+ p $ 3 ! $ b _ r却写错了,导致arclist标签在使用了flag属q % ^性时会失效的问题。
* D d 6 X T P正后的写法如下。
打开/include/taglib/arclist.lib.php,我目前用的最新版 5.7@ 8 F | SP1,
代码约位于295-296行。查找以下两行代码。
if($CrossID==”) $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’)’;
else $orwheres[] = ‘ arc.typeid IN (‘.GetSonId0 6 $ a a * b Qs($typeid)D * P 5 _.’,’.$CrossID.’)’;
将其替换成以下代码。
if($CrossID==”} S !) $orwheres[] = ‘ (arc.typeid IN (‘.GetSonIds($typeid).’) OR arc.typeid2 IN (‘.GetSonIds($typeid).’j V s ))) ‘;
else $orwhe5 # e o { m + f ares[] = ‘ (arc.2 9 n i i ^ 1typeid INF V $ (‘.GetSonIds($typeid).’,’.$CrossID.’) OR arc.typeid2 IN (‘.GetSonIds+ P F ]($typeid).’,’.$CrossID.’)) ‘;
OK,这样就改完了,保存后如果你是生成静态的,请生成相关的。如果是动态的,请更新系统缓存。然后就i A @ P z 3可以看到效果了。
===============================================================================
以上方法有个缺点arclisti = f 7 1 f o 标签 就是只能有在显示两处位置
下面方法经测试可以三个 不知道Q G ( w Z ( & \三个以上可以不可以
用arclist标签调用文章的时候才发现,根本无法调用相关文章。
下面给出解决办法,希望帮到需要的人。
找到/include/taglib/arclisg D ~ r W 6t.lib.php文件然后打开。然后在大约300行代码的位置。将/ : L下面的代码
if($CrossID==”) $oO B 2 `rwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’)’;
else $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).4 3 T ~ } ?‘,’.$CrossID.’)’;
替换成
if($CrossID==”)
$orwheres[] = ” (arc.typeid in (“.GetSonIds($typeid).”) or
arc.typeid2 in(“.GetSonIds($typeid).– j ~“) or CONCAT( ‘,’,
arc.typeid2, ‘,’ ) LIKE ‘%,”.$typeid.”,%’ )”;
else $orwheres[] = ” (arc.typeid in (“.GetSonIds($typeid)
.”,”.$CrossID.”) or arc.typeid2
in (“.GetSonIds($typeid).”,”.$CrossID.”)
orc p M [ q / CONCAT( ‘,’, arc.typeid2, ‘,’ ) LIKE ‘%,”.$typeid.”,%’)”;

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权F g T归原9 o d ] { * d 8 %作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服7 h [ |处理。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注