当前位置: SEO优化 > 织梦dedecms > 织梦标签/二开 > 正文
织梦标签/二开 织梦标签/二开 关注:3 内容:15

织梦dedecms TAG标签调用汇总(史上最全)

  • 查看作者
  • 打赏作者
    • TAG标签是一种由您自己定义的,比分类更准确、更具体,可以概括文章主要内容的关键词,合理的运用TAG标签,可以使你发表的文章更容易被搜索到。

      很多网站的首页、列表页和文章页调用的TAG关键词是带超链接,这样利于蜘蛛搜索抓取,又有利于用户点击,那在织梦dedecms系统的网站上该如何实现这一功能呢?对此,整理了以下几种方法供大家使用:

      织梦dedecms网站TAG标签调用汇总

      1、tag标签的语法解释

      基本语法:

      {dede:tag row='30' sort='new' getall='0'}
        <a href='[field:link/]'>[field:tag /]</a>
      {/dede:tag}

      参数说明:

      row='30' 调用条数为30条

      sort='new' 排序方式month,rand,week

      getall='0' 获取类型0为当前内容页TAG标记,1为获取全部TAG标记。

      底层模板字段:link,tag

      2、最新tag标签调用

      {dede:tag row='30' sort='new'}
        <a href='[field:link/]'>[field:highlight/]([field:result/])</a>
      {/dede:tag}

      3、当月热门tag标签调用

      {dede:tag row='30' sort='month'}
        <a href='[field:link/]'>[field:tagname/]([field:result/])</a>
      {/dede:tag}

      4、随机tag标签调用

      {dede:tag row='60' sort='rand'}
        <a href='[field:link/]'>[field:highlight/]([field:result/])</a>
      {/dede:tag}

      5、采集热门Tags,刷新一次变换一次

      模板代码:

      {dede:tag row='10' sort='month' }
        <a class="tag" href='[field:link/]'>[field:tagname/] </a>
      {/dede:tag}
        <script language="javascript">
        <!--
        var tag_a=document.getElementsByTagName("a");
        for( i in tag_a){
        var offset=6;
        var num=4;
        if(tag_a.className=="tag"){
        var rnd=Math.ceil((num+offset)*Math.random());
        if(rnd>offset){
        tag_a.className="tag"+(rnd-offset);
        }
        }
        }
        //-->
        </script>

      CSS代码:

          .tag1 { color:#339900;font-weight:bold;}
        .tag2 { color:#e65730;}
        .tag3 { color:#00b9da;}
        .tag4 { color:#FE3981;font-weight:bold;font-size:14px;}

      6、文章页tag标签调用

      {dede:tag table='dede_search_keywords' sort='keyword' row='2' if=''}
        <a class=blue href='[field:link/]' target=_blank>[field:tag /]</a>
      {/dede:tag}

      {dede:field name='keywords' runphp='yes' }
        if(!empty(@me)){
        $kws = explode(' ',@me);
        @me = "";
        foreach($kws as $k){
        @me .= "<a href='/tag.php?/$k/'>$k</a> ";
        }
        @me= str_replace('+', ' ',trim(@me));
        }
      {/dede:field}

      7、dedecms5.7列表页调用TAG标签的两种方法

      dedecms默认在列表是无法调用tag标签的,现给大家再提供列表页tag标签调用方法:

      首先,找到include\helpers\archive.helper.php文件

      (注:有朋友会疑问,主页和频道、列表应该加的是不同的调用,不过本人开始用列表页测试,成功;加入主页后测试也是成功显示的,所以我就没再继续深究下去了,另外,这个文件的内容更改,在后台文件是更改不了的,提示是注入sql,所以要在ftp中找到这个文件进行更改才行0。)

      在底部增加:

      function GetTags_list($aid)
            {
                global $dsql;
                $tags = '';
                $query = "SELECT tag FROM `ma_taglist` WHERE aid='$aid' ";
                $dsql->Execute('tag',$query);
                while($row = $dsql->GetArray('tag'))
                {
                $tags .= ($tags=='' ? "<a href='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>" : ','."<a href='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>");
                }
                return $tags;
            }

      然后,在列表需要调用tag标签的位置添加:

      [field:id function=GetTags_list(@me)/]

      即可完成。

      8、首页调用文章TAG标签的方法

      如果你网站用的是dedecms v5.7版本可直接使用标签:

      [field:id function=GetTags(@me)/]

      就可以调用出来了,只不过不带连接的,要想给tag标签加上链接,还需要进行以下操作:

      首先,注释掉include/helpers/archive.helper.php文件的130行,

      $tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);

      用下面语句替换,当然你也可以加入自己的样式:

      $tags .= "<a href='/tags.php?/".urlencode($row['tag'])."/'>".$row['tag']."</a> ";

      再再下面空白处加入以下代码:

      if ( ! function_exists('GetTagk')){
        function GetTagk($aid) 
        {
        global $dsql; 
        $tagk = ''; 
        $query = "SELECT tag,aid FROM `ma_taglist` WHERE aid='$aid' ";
        $dsql->Execute('tag',$query);
        while($row = $dsql->GetArray('tag'))
        { 
        $tagk .= ($tagk=='' ? $row['tag'] : ','.$row['tag']);
          }
          return $tagk;
          }
        }

      然后,打开dede/article_edit.php找到:

      $tags = GetTags($aid);

      在下面加上:

      $tagk = GetTagk($aid);

      再打开dede/templets/article_edit.htm再调用tag标签那里把:

      <?php echo $tags; ?>

      改成:

      <?php echo $tagk; ?>

      这样调用的时候可以调用tag,后台显示也能正常显示。

      大版主

      666 [s-1] [s-9]

      回复
    • 管理后台
    • 帖子间隔 侧栏位置: