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

    likearticle实现关联网站的所有文档的方法
    POST TIME:2020-03-28 21:51

    为了增加网站的用户粘度,留住客户,我们采用各种手法,增加网站的粘度,比如在文档下方添加“相关文章”栏目,我们知道织梦CMS可以通过likearticle标签的调用来实现,但我们发现在使用likearticle标签在实现文档关联时,只能调用当前栏目(包括顶级栏目下的下级栏目)的文档,那么我们如何来实现关联网站的所有文档呢?

    我们知道,从DedeV5.3版本开始,所有的标签源码都是独立的,我们只需要修改标签源码就可以实现这个功能了。

    一、实现方法

    打开include agliblikearticle.lib.php文件,找到如下代码:

    if(!emptyempty($refObj->Typelink->TypeInfos['reid'])){

    $typeid=$refObj->Typelink->TypeInfos['reid'];

    }

    将其替换为如下代码:

    if($typeid=='0'){

    $typeid='';

    }

    elseif(!emptyempty($refObj->Typelink->TypeInfos['reid'])){

    $typeid=$refObj->Typelink->TypeInfos['reid'];

    }

    保存后即可。

    通过这样的修改以后,相关文档的调用就会默认索引所有的文档了。

    这里需要给大家纠正一下,在相关文档标签里,限制调用栏目的参数为 mytypeid 而不是 typeid,希望大家要注意。

    二、代码解释

    我们增加的实际核心代码为:

    if($typeid == '0'){
    $typeid = '';
    }

    它的意思是,如果typeid传来的值等于0,那么就将变量$typeid为空。而索引$typeid变量是在下面SQL语句里:

    Selectarc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,

    tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath

    from`dede_archives`arcleftjoin`dede_arctype`tponarc.typeid=tp.id

    wherearc.arcrank>-1and($keyword)$typeid$orderquerylimit0,$row

    而这里的$typeid变量也是在上一行的 $typeid = " And arc.typeid in($typeid) And arc.id<>$arcid "; 中进行赋值。那么我们将这个$typeid 变量是事先就判断并赋值为空以后,一切的问题就自燃迎刃而解了。

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

    截屏,微信识别二维码

    微信号:veteran88

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

     打开微信

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