DEDECMS5.7首页列表页调用TAG标签(带链接)教程
dedecms v5.7版本直接使用标签:[field:id function=GetTags(@me)/] ,就可以调用出来了
只不过不带连接的,如果需要连接,请注释掉include\helpers\archive.helper.php文件的130行:
$tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
用下面语句替换,这里你可以加上你自己的样式
$tags .= "<a href='/tags.php?/".urlencode($row['tag'])."/'>".$row['tag']."</a> ";
下面给大家附带上DedeCMSv5.6及其以前版本:
dedecms默认在列表是无法调用tag标签的,经过各位版主们的帮助,现给大家提供出种方法
方法1:
在列表需要的位置加入下列代码
[field:id runphp=yes]
$tsql = new DedeSql(false);
$tags = '';
$tsql->SetQuery("Select i.tagname From dede_tag_list t left join dede_tag_index 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['tagname'])."'>".$row['tagname']."</a>";
}
@me=$tags;
[/field:id]
方法2:
在inc_functions.php文件里加入
function listtag($aid){
$tsql = new DedeSql(false);
$tags = '';
$tsql->SetQuery("Select i.tagname From dede_tag_list t left join dede_tag_index i on i.id=t.tid where t.aid='$aid'");
$tsql->Execute('t');
while($row = $tsql->GetArray('t',MYSQL_ASSOC)){
$tags .= "<a href='/tag.php?/".urlencode($row['tagname'])."'>".$row['tagname']."</a>";
}
return $tags;
}
然后在列表页相应位置加入
[field:ID function="listtag(@me)"/]标记