介绍织梦dedecms首页列表页文章页调用tag的方法

时间:2014-07-09

标签名称:tag

{dede:tag row='10' getall='1' sort='month'}

<li><a href='[field:link/]'>[field:tag /]</a></li>

{/dede:tag}

功能说明:TAG调用标签

全局使用基本语法:

{dede:tag sort='new' getall='0'}

<a href='[field:link/]'>[field:tag /]</a>

{/dede:tag}

参数说明:row='30' 调用条数sort='new' 排序方式 month,rand,weekgetall='0' 获取类型 0 为当前内容页TAG标记,1为获取全部TAG标记

 

1,首页,列表页和文章页调用所,的tag

{dede:tag row='8' getall='1' sort='month'} 
支持属性 
row|30   行数 
sort|new   排序 
getall|0 调用类型 
可以查看/include/taglib/tag.lib.php 

2,列表页调用每一篇文章的tag

[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='/tags.php?/".urlencode($row['tag'])."'>".$row['tag']."</a>";        
     } 
     @me=$tags; 
[/field:id]  

3,文章页调用该篇正文的tag

{dede:field.tags/}

默认的TAG是无链接的,如果你希望该tag带上链接,则打开include/common.func.php ,大约755行,找到

//获得某文档的所有tag
function GetTags($aid)
{
 global $dsql;
 $tags = '';
 $query = "Select tag From ` where aid='$aid' ";
 $dsql->Execute('tag',$query);
 while($row = $dsql->GetArray('tag'))
 {
  $tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
 }
 return $tags;
}

修改为

//获得某文档的所有tag 
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; 
}   


上一条:织梦系统全站伪静态配置操作过程 下一条:Dede列表页调用TAG标签的两种方法

相关文章

最新文章