原文来自:https://www.zixuephp.com
dedecms调用tag标签实现方法与详解分析
tag标签是很多站长用来做排名关键字的一个非常重要的标识了,我今天在做一个站时使用了dedecms了,这个系统我本不怎么了解,在调用tag标签时碰到不少问题了,下面小编就整理一下在开发使用dedecms中tag标签使用例子吧.
一,调用本站所有tag标签方法,这个官方有说明.
方法1,代码如下:
{dede:tag type='current'/}
生成后:tag标签(个数)
方法2,代码如下:
- {dede:tagsort='new'getall='0'row=60}
- <atarget="_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'))
- {
- functionGetTags($aid)
- {
- global$dsql;
- $tags='';
- $query="SELECTtagFROM`dede_taglist`WHEREaid='$aid'";
- $dsql->Execute('tag',$query);
- while($row=$dsql->GetArray('tag'))
- {
- $tags.=($tags==''?$row['tag']:','.$row['tag']);
- }
- return$tags;
- }
- }
- //替换成以下代码:
- if(!function_exists('GetTags'))
- {
- functionGetTags($aid)
- {
- global$dsql;
- $tags='';
- $query="SELECTtagFROM`dede_taglist`WHEREaid='$aid'";
- $dsql->Execute('tag',$query);
- while($row=$dsql->GetArray('tag'))
- {
- $tags.=($tags==''?'<ahref=/tags.php?/'.$row['tag'].'target=_blank>'.$row['tag'].'</a>':','.'
- <ahref=/tags.php?/'.$row['tag'].'target=_blank>'.$row['tag'].'</a>');}
- return$tags;//phpfensi.com
- }}
三,调用本栏目tag标签方法
打开DEDECMS根目录include/common.func.php,在最底部 ?> 前面加入以下代码:
- functionlisttag($aid)
- {
- $tsql=newDedeSql(false);
- $tags='';
- $tsql->SetQuery("Selecti.tagFromdede_taglisttleftjoindede_tagindexioni.id=t.tidwheret.aid='$aid'");
- $tsql->Execute('t');
- while($row=$tsql->GetArray('t',MYSQL_ASSOC)){
- $tags.="<ahref='/tags.php?/".urlencode($row['tag'])."/'>".$row['tag']."</a>";
- }
- return$tags;
- }
2.然后在文章页可以使用 21:
{dede:field.id function="listtag(@me)"/}
总结,对于文章调用当前下面的tag标签我们dedecms自带的不太适合现在SEO网站优化的一些进度了,所以我们需要进行改进了.