好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

dedecms调用tag标签实现方法与详解分析 - DeDecms

dedecms调用tag标签实现方法与详解分析

tag标签是很多站长用来做排名关键字的一个非常重要的标识了,我今天在做一个站时使用了dedecms了,这个系统我本不怎么了解,在调用tag标签时碰到不少问题了,下面小编就整理一下在开发使用dedecms中tag标签使用例子吧.

一,调用本站所有tag标签方法, 这个官方有说明.

方法1,代码如下:

{dede:tag type='current'/}

生成后:tag标签(个数)

方法2,代码如下:

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

补充, 代码如下:

最新标签:{dede:tag row='30' sort='new'} [field:tag /]{/dede:tag}

当月热门标签:{dede:tag row='30' sort='month'} [field:tag /] {/dede:tag}

随机标签:{dede:tag row='60' sort='rand'} [field:tag /]{/dede:tag}

注意:

row:调用条数。

sort:排序方式,参数有:month,rand,week, new。

getall:获取类型,参数有:0和1,其中0为当前内容页或栏目页tag,1为获取全站tag.

二,调用文章当前页面tag标签

找到文章模板加入{dede:field.tags/}这个标签即可,但是dedecms默认的Tag标签是没有链接的.

给Tag标签加超链接,大家找到网站跟目录下的/include/helpers/archive.helper.php,找到120行左右,代码如下:

if  ( ! function_exists( 'GetTags' ))  {       function  GetTags( $aid )      {           global   $dsql ;           $tags  =  '' ;           $query  =  "SELECT tag FROM `dede_taglist` WHERE aid='$aid' " ;           $dsql ->Execute( 'tag' , $query );           while ( $row  =  $dsql ->GetArray( 'tag' ))          {               $tags  .= ( $tags == ''  ?  $row [ 'tag' ] :  ',' . $row [ 'tag' ]);          }           return   $tags ;      }  }    //替换成以下代码:   if  ( ! function_exists( 'GetTags' ))  {       function  GetTags( $aid )      {           global   $dsql ;           $tags  =  '' ;           $query  =  "SELECT tag FROM `dede_taglist` WHERE aid='$aid' " ;           $dsql ->Execute( 'tag' , $query );           while ( $row  =  $dsql ->GetArray( 'tag' ))          {               $tags  .= ( $tags == ''  ?  '<a href=/tags.php?/' . $row [ 'tag' ]. ' target=_blank>' . $row [ 'tag' ]. '</a>' :  ',' .'  <a href=/tags.php?/ '.$row[' tag '].'  target=_blank> '.$row[' tag '].' </a>');        }           return   $tags ;   //phpfensi.com       }} 

三,调用本栏目tag标签方法

打开DEDECMS根目录include/common.func.php,在最底部 ?> 前面加入以下代码:

function  listtag( $aid )   {   $tsql  =  new  DedeSql(false);   $tags  =  '' ;   $tsql ->SetQuery( "Select i.tag From dede_taglist t left join dede_tagindex i on i.id=t.tid where t.aid='$aid'" );   $tsql ->Execute( 't' );   while ( $row  =  $tsql ->GetArray( 't' ,MYSQL_ASSOC)){   $tags  .=  "<a href='/tags.php?/" .urlencode( $row ['tag '])."/' >". $row [ 'tag' ]. "</a> " ;   }   return   $tags ;   } 

2.然后在文章页可以使用 21:

{dede:field.id function="listtag(@me)"/}

总结, 对于文章调用当前下面的tag标签我们dedecms自带的不太适合现在SEO网站优化的一些进度了,所以我们需要进行改进了.

查看更多关于dedecms调用tag标签实现方法与详解分析 - DeDecms的详细内容...

  阅读:44次