• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    dedecms在arclist中实现调用副栏目文章的功能
    POST TIME:2019-03-20 14:29

    dedecms中的文章在选择幅栏目后,在其对应的幅栏目列表中可以显示该文章,但在arclist 标签中却无法显示该文章,网上找了很多,解决办法都一样,但写法却写错了,导致arclist标签在使用了flag属性时会失效的问题。修正后的写法如下:
    打开/include/taglib/arclist.lib.php,代码约位于301-302行(我目前用的DedeCMS最新版 5.7 UTF-8),查找以下两行代码:
    if($CrossID==”) $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’)’;else $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’,’.$CrossID.’)’;
    将其替换成以下代码:
    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,如果设置超过两个就实现不了上面的功能了,忘高手补充下。

    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!