dedecms Tag 标签调用方法(大全)
在织梦CMS中,TAG标签是一种由网站管理员自定义的关键词,比分类更准确、更具体,可以概括文章主要内容,合理运用TAG标签,有助于提升文章的搜索引擎排名和用户体验,本文将详细介绍织梦CMS中TAG标签的各种调用方法,包括首页、列表页、文章页等不同位置的调用方式。
Tag标签的基本语法解释
1、基本语法:
{dede:tag row='30' sort='new' getall='0'} <a href='[field:link/]'>[field:tag /]</a> {/dede:tag}
2、参数说明:
row='30'
:调用条数为30条。
sort='new'
:排序方式为最新(month)、随机(rand)、每周(week)。
getall='0'
:获取类型为当前内容页TAG标记(0),获取全部TAG标记(1)。
各种场景下的Tag标签调用方法
1. 最新Tag标签调用
{dede:tag row='30' sort='new'} <a href='[field:link/]'>[field:highlight/]([field:result/])</a> {/dede:tag}
2. 当月热门Tag标签调用
{dede:tag row='30' sort='month'} <a href='[field:link/]'>[field:tagname/]([field:result/])</a> {/dede:tag}
3. 随机Tag标签调用
{dede:tag row='60' sort='rand'} <a href='[field:link/]'>[field:highlight/]([field:result/])</a> {/dede:tag}
4. 采集热门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[i].className=="tag"){ var rnd=Math.ceil((num+offset)*Math.random()); if(rnd>offset){ tag_a[i].className="tag"+(rndoffset); } } } //> </script>
5. 文章页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}
6. 列表页调用TAG标签的方法(dedecms5.7版本)
找到includehelpersarchive.helper.php文件,在底部增加以下代码:
function GetTags_list($aid)
{
global $dsql;
$tags = '';
$query = "SELECT tag FROMma_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)/]
7. 列表页调用TAG标签的方法(dedecms5.6版本)
方法一:直接在模板需要的位置加入以下代码即可:
[field:id runphp=yes] $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=’@me’”); $tsql>Execute(‘t’); while($row = $tsql>GetArray(‘t’,MYSQL_ASSOC)){ $tags .= “<a href=’/tag.php?/”.urlencode($row['tag']).”‘>”.$row['tag'].”</a>”; } @me=$tags; [/field:id]
方法二:打开dedecms根目录include/common.func.php,在最底部的“?>”之前加入以下代码:
//岛主:列表页调用tag的方法 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=’@me’”); $tsql>Execute(‘t’); while($row = $tsql>GetArray(‘t’,MYSQL_ASSOC)){ $tags .= “<a href=’/tag.php?/”.urlencode($row['tag']).”‘>”.$row['tag'].”</a>”; } @me=$tags; }
FAQs常见问题解答
1、如何在首页调用最新的Tag标签?
答:在首页模板文件中插入以下代码:
{dede:tag row='30' sort='new'} <a href='[field:link/]'>[field:highlight/]([field:result/])</a> {/dede:tag}
这段代码会显示最新的30个Tag标签,并且每个标签都是超链接形式。
2、如何使列表页也能显示Tag标签?
答:对于dedecms5.7版本,需要在includehelpersarchive.helper.php文件中增加一个函数,然后在列表模板中使用这个函数来获取Tag标签,对于dedecms5.6版本,可以直接在模板中添加相应的PHP代码来实现,具体实现方法请参见上面的“列表页调用TAG标签的方法”。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1227970.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复