云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

如何在织梦dedecms中高效调用首页、列表页和文章页的标签?

在织梦dedecms的首页、列表页、文章页中,可以使用系统标签来调用tag。具体方法如下:,,1. 首页调用tag:在首页模板文件(如index.htm)中使用{dede:tag type=’dynamic’}标签来调用动态生成的tag。,,2. 列表页调用tag:在列表页模板文件(如list_article.htm)中使用{dede:field name=’keywords’/}标签来调用当前文章的tag。,,3. 文章页调用tag:在文章页模板文件(如article_article.htm)中使用{dede:field name=’keywords’/}标签来调用当前文章的tag。

织梦CMS(DedeCMS)中,调用文章的TAG标签并加上链接是一个常见的需求,通过合理的TAG调用,可以增强网站的内链结构,提高SEO效果,同时也方便用户浏览相关内容,下面将详细介绍在不同页面如何实现TAG标签的调用:

首页、列表页和文章页调用所有的TAG

在首页、列表页和文章页调用所有TAG标签的方法如下:

“`织梦

{dede:tag row=’8′ getall=’1′ sort=’month’}

参数说明row='8':表示每次最多显示8个TAG标签。getall='1':表示获取全部TAG标签。sort='month':按月份排序。
列表页调用每一篇文章的TAG
在列表页调用每篇文章的TAG标签时,可以使用以下代码:
```织梦
[field:id runphp='yes'] 
$tsql = new DedeSql(false); 
$tags = ''; 
$tsql>SetQuery("Select i.tag From tf_taglist t left join tf_tagindex i on i.id=t.tid where t.aid='@me'"); 
$tsql>Execute('t'); 
while($row = $tsql>GetArray('t',MYSQL_ASSERT)){ 
    $tags .= "<a href='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>"; 
} 
@me=$tags; 
[/field:id]

文章页调用该篇正文的TAG

在文章页调用该篇文章的TAG标签时,可以使用以下方法:

“`织梦

{dede:field.tags/}

如果希望TAG标签带有链接,可以在include/common.func.php文件中进行修改:
找到大约755行的位置,将以下代码:

function GetTags($aid) {

global $dsql;

$tags = ”;

$query = "Select tag Fromtf_taglist where aid=’$aid’ ";

$dsql>Execute(‘tag’,$query);

while($row = $dsql>GetArray(‘tag’)) {

$tags .= ($tags==” ? $row[‘tag’] : ‘,’.$row[‘tag’]);

return $tags;

修改为:

function GetTags($aid) {

global $dsql;

$tags = ”;

$query = "Select tag Fromdede_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;

动态和静态版本的区别
动态版本
在列表页调用每篇文章的TAG标签时,可以使用以下代码:
```织梦
[field:id runphp='yes'] 
$tags = GetTags(@me);        
$revalue = '';        
$tags = explode(',', $tags);        
foreach($tags as $key => $value){
    if($value){
        $revalue .= '<a href="'.$cfg_cmspath.'/tags.php?/'.$value.'/">'.$value.'</a>&nbsp;';         
    }      
}        
@me = $revalue;     
[/field:id]

静态版本

在列表页调用每篇文章的TAG标签时,可以使用以下代码:

“`织梦

[field:id function=GetMyTags(@me,5)/]


GetMyTags函数定义如下:

if (!function_exists(‘GetMyTags’)) {

function GetMyTags($aid, $num=3) {

global $dsql,$cfg_cmspath;

$tags = ”;

$query = "SELECT * FROM#@__taglist WHERE aid=’$aid’ LIMIT $num ";

$dsql>Execute(‘tag’,$query);

while($row = $dsql>GetArray(‘tag’)) {

$link = $cfg_cmspath."/tags.php?/{$row[‘tag’]}";

$tags.= ($tags==” ? "<a href='{$link}’ rel=’tag’>{$row[‘tag’]}</a>" : ‘,’."<a href='{$link}’ rel=’tag’>{$row[‘tag’]}</a>");

}

return $tags;

}


FAQs
1、如何在首页、列表页和文章页分别调用不同的TAG标签?
    在首页、列表页和文章页调用所有TAG标签时,可以使用{dede:tag row='8' getall='1' sort='month'},在列表页调用每篇文章的TAG标签时,可以使用[field:id runphp='yes'] ... [/field:id]代码,在文章页调用该篇文章的TAG标签时,可以使用{dede:field.tags/}。
2、如何使TAG标签带有链接?
    如果希望TAG标签带有链接,可以在include/common.func.php文件中进行修改,找到大约755行的位置,将function GetTags($aid)函数中的代码修改为带有链接的形式,将其修改为"<a href=/tags.php?/{$row['tag']} target=_blank>{$row['tag']}</a>"
打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《如何在织梦dedecms中高效调用首页、列表页和文章页的标签?》
文章链接:https://www.yunzhuji.net/yunfuwuqi/254727.html

评论

  • 验证码