DEDE arclist标签无法调用副栏目文章的解决办法arclist标签调用

2016-06-05dedecms教程
245

arclist标签无法调用副栏目文章的解决办法

 

最近发现DEDECMS/' target='_blank'>dedecms中的文章在选择幅栏目后,

在其对应的幅栏目列表中可以显示该文章,但在arclist 标签中却无法显示该文章,

网上找了很多,解决办法都一样,但写法却写错了,导致arclist标签在使用了flag属性时会失效的问题。

修正后的写法如下。


打开/include/taglib/arclist.lib.php,我目前用的最新版 5.7 SP1,

代码约位于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.')) ';

 

OK,这样就改完了,保存后如果你是生成静态的,请生成相关的。如果是动态的,请更新系统缓存。然后就可以看到效果了。

===============================================================================

以上方法有个缺点arclist 标签 就是只能有在显示两处位置 

下面方法经测试可以个 不知道三个以上可以不可以

用arclist标签调用文章的时候才发现,根本无法调用相关文章。

下面给出解决办法,希望帮到需要的人。

找到/include/taglib/arclist.lib.php文件然后打开。然后在大约300行代码的位置。将下面的代码

 

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).") or CONCAT( ',',

arc.typeid2, ',' ) LIKE '%,".$typeid.",%' )";

else $orwheres[] = " (arc.typeid in (".GetSonIds($typeid)

.",".$CrossID.") or arc.typeid2

in (".GetSonIds($typeid).",".$CrossID.")

or CONCAT( ',', arc.typeid2, ',' ) LIKE '%,".$typeid.",%')";

The End

相关推荐

Dedecms织梦CMS如何添加自定义函数
我们在使用dedecms时候,需要拓展函数,那么这个函数需要写在哪个文件中呢?一般来说,需要写在:include/extend.func.php中,当然也可以写在其他公共文件中方便调用,以下是几个自定义函数示例...
2025-10-05 dedecms教程
80

织梦发布文档时候字数被限制了如何修改?
织梦发布文档时候字数被限制了如何修改,下面以文章发布为例,跟版网小编教你如何修改: 程序文件 dede/article_add.php dede/article_edit.php 修改代码 这里都是被进行了截取,我们只需要将截取字符改长一点就可以 $title= cn_substrR($title,$cfg_title_ma...
2025-07-05 dedecms教程
86

dedecms怎么做判断?怎么在一个标签中输入另外一个标签?
我们在使用织梦DedeCMS系统程序开发网站中,经常遇到需要对文章标题进行字数限制,通常做法是在a标签中加入一个title属性,让鼠标放上去的时候显示完整标题。但是标题被剪裁掉一些字符而不完整,下面跟版网的小编就为你推荐另外几种标题调用方式,如进行标题...
2025-07-05 dedecms教程
69

dedecms怎样设置给图片添加水印
dedecms怎样设置给图片添加水印,具体步骤为: 一、进入系统基本参数中的附件设置,启用是否使用图片水印选项; 二、在图像水印设置中选择文字或图片水印类型,文字水印可调整字体、颜色、透明度及位置,图片水印则需上传png格式的半透明logo,并合理设置大...
2025-07-01 dedecms教程
147

dedecms织梦列表页字段怎么做判断
用到dedecms时候,有时候需要对文章列表、arclist输出时候的字段做判断显示,比如缩略图没有则不显示,有的时候就显示图片,并且固定尺寸,这个要怎么操作呢? 关于列表字段内自定义字段的调用方法,有数据则显示无数据则不显示(备注:limit=3,1意思是从第4...
2025-07-01 dedecms教程
68

织梦内容页使用if判断某个字段是否为空
我们在使用织梦dedecms时候,如何使用if判断某个字段是否为空呢?我们以文章页自定义字段website为例:使用if语句判断website网址是否为空,如果有显示website并加上网址,如果没有就不显示。 {wmd:field.website runphp='yes'}if(@me'') {@me = 'a href="'...
2025-06-21 dedecms教程
171