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

    织梦DedeCMS通过Tag标签获取相关文章
    POST TIME:2017-10-25 00:18

    织梦的相关文章是根据tag和文章关键词来的,不过效果不是特别的好,获取文章的数量是比较少的。对织梦系统自带的相关文章标签感兴趣的朋友,可以去看likearticle|织梦相关文章标签一文。

    今天给大家分享的是只根据文章的Tag标签来调用相关文章的自定义标签,在手动填写Tag标签的情况下,效果还是非常不错的。先说一下如何给织梦系统增加自定义标签,只需要把自定义标签文件上传到\include\taglib目录即可。下面是根据Tag标签获取相关文章的自定义dede:arctag标签代码:

     
    <?php  if(!defined('DEDEINC'))exit('Request Error!');
    functionlib_arctag(&$ctag,&$refObj)
    {
    global$dsql;
     $ar="row|10";
     FillAttsDefault($ctag->CAttribute->Items);
     extract($ctag->CAttribute->Items);
     $innertext=$ctag->GetInnerText();
     $tcp=newDedeTagParse();
     $tcp->SetNameSpace("field","[","]");
     $tcp->LoadSource($innertext);
     $aid=$refObj->Fields['id'];
     $revalue='';
     if($aid){
      $ids=array();
      $tag=array();
      $dsql->Execute("f","select tag from dede_taglist where aid = '$aid'");
      while($re=$dsql->GetArray("f")){
       $tag[] =$re['tag'];
      }
      if($tag){
       foreach($tagas$tk){
    $dsql->Execute("f1","select aid from dede_taglist where tag = '$tk'");
    while($re1=$dsql->GetArray("f1")){
     $ids[] =$re1['aid'];
    }
       }
      }
      if($ids){
       $ids =array_unique($ids);
       $sqa="(".join(",",$ids).")";
       $query= "SELECT se.*,tp.typedir,tp.typename,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
    FROM `dede_archives` se LEFT JOIN `dede_arctype` tp ON se.typeid=tp.id WHERE  se.id in$sqalimit$row";
       $dsql->Execute("f2",$query);
       while($row1=$dsql->GetArray("f2")){
    $row1['arcurl'] = GetFileUrl($row1['id'],$row1['typeid'],$row1['senddate'],$row1['title'],
    $row1['ismake'],
    $row1['arcrank'],$row1['namerule'],$row1['typedir'],$row1['money'],
    $row1['filename'],$row1['moresite'],$row1['siteurl'],$row1['sitepath']);
    $row1['title'] = cn_substr($row1['title'],10);
    foreach($tcp->CTagsas$tid=>$tt){
     $tcp->Assign($tid,$row1[$tt->GetName()]);
    }
    $revalue.=$tcp->GetResult();
       }
      }
     }
       return$revalue;
    }

    复制以上的代码,使用Dreamweaver等专业软件保存为arctag.lib.php文件,注意和你使用的织梦DedeCMS系统编码一致。dede:arctag标签在织梦模板中的用法如下:

     
    {dede:arctag id=10}
    <ahref="[field:arcurl/]">[field:title/]</a>
    {/dede:arctag}

    你可以根据自己的需要,对标签进行自我拓展。

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

    截屏,微信识别二维码

    微信号:veteran88

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

     打开微信

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