迷城网络 - 专注于中小企业Linux运维服务

当前位置: 迷城网络 > 建站程序 >

dedecms在arclist中实现调用副栏目文章的功能

时间:2019-03-27 10:51来源: 作者: 点击:
dedecms中的文章在选择幅栏目后,在其对应的幅栏目列表中可以显示该文章,但 在arclist 标签中却无法显示该文章 ,网上找了很多,解决办法都一样,但写法却写错了,导致arclist标签

中的文章在选择幅栏目后,在其对应的幅栏目列表中可以显示该文章,但,网上找了很多,解决办法都一样,但写法却写错了,导致arclist标签在使用了flag属性时会失效的问题。修正后的写法如下:

打开/include/taglib/arclist.lib.php,代码约位于301-302行(我目前用的DedeCMS最新版 5.7 UTF-8),查找以下两行代码:

Copy to Clipboarddedecms在arclist中实现调用副栏目文章的功能引用的内容:[www.veryhuo.com] if($CrossID==”) $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’)';else $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’,’.$CrossID.’)';

将其替换成以下代码:

Copy to Clipboarddedecms在arclist中实现调用副栏目文章的功能引用的内容:[www.veryhuo.com] if($CrossID==”)
{
$typeid2like = ” ‘%,”.GetSonIds($typeid).”,%’ “;
$orwheres[] = ” (arc.typeid IN (“.GetSonIds($typeid).”) OR CONCAT(‘,’, arc.typeid2, ‘,’) LIKE $typeid2like ) “;
}else{
$typeid2like = ” ‘%,”.GetSonIds($typeid).”,”.$CrossID.”,%’ “;
$orwheres[] = ” (arc.typeid IN (“.GetSonIds($typeid).”,”.$CrossID.”) OR CONCAT(‘,’, arc.typeid2, ‘,’) LIKE $typeid2like) “;
}

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

适合单栏目调用,多栏目调用暂时实现不了,如果哪位同志实现了的,可以完善下哦,方便大家!

例如:{dede:arclist typeid=’4′},这里的typeid只能设置一个栏目的id,如果设置超过两个就实现不了上面的功能了,忘高手补充下。

(责任编辑:迷城网络科技)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容