1.dedecms列表页调用tag的方法
方法一
[field:id runphp=yes]
$tsql = new DedeSql(false);
$tags = ”;
$tsql->SetQuery(“Select i.tag From '#@__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]
方法二
1.打开DEDECMS根目录include/common.func.php
在最底部 ?> 前面加入以下代码:
//NI9HT:列表页调用tag的方法
function listtag($aid)
{
$tsql = new DedeSql(false);
$tags = ”;
$tsql->SetQuery(“Select i.tag From '#@__taglist' t left join dede_tagindex i on i.id=t.tid where t.aid=’$aid’”);
$tsql->Execute(‘t’);
while($row = $tsql->GetArray(‘t’,MYSQL_ASSOC)){
$tags .= “<a href=’/tags.php?/”.urlencode($row['tag']).”/’>”.$row['tag'].”</a> “;
}
return $tags;
}
{dede:field.id runphp=yes}
$tsql = new DedeSql(false);
$tags = ”;
$tsql->SetQuery(“Select i.tag From '#@__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;
{/dede:field.id}
2.然后在文章页可以使用{dede:field.id function=”listtag(@me)”/}来调用TAG标签,
在列表页可以使用[field:id function="listtag(@me)"/]来调用TAG标签.
然后在列表页相应位置加入[field:id function="listtag(@me)"/]标记。5.6版本的DedeCMs里面关于tag的调用,虽然也有typeid的参数了,但是你打开数据库看看就会发现,虽然dede_tagindex表里面也有了typeid的字段。这样我们就可以用DEDE 的SQL 语句实现更加灵活的 Tag调用。
2.dedecms文章页调用tag的方法
TAG:
{dede:field name='keywords' runphp='yes' }
if(!empty(@me)){
$kws = explode(',',@me);
$kws = array_slice ($kws, 0, 5);
@me = "";
foreach($kws as $k){
$m = urlencode($k);
@me .= "<a href=\"/tags/$m/\" target=\"_blank\">$k</a> ";
}
@me= str_replace('+', ',',trim(@me));
}
{/dede:field}
3.dedecms文章页调用search关键字的方法
关键字:
{dede:field name='keywords' runphp='yes' }
if(!empty(@me)){
$kws = explode(',',@me);
@me = "";
foreach($kws as $k){
$m = urlencode($k);
@me .= "<a href='/search.html?keyword=$m&kwtype=0&searchtype=title' target='blank'>$k</a>";
}
@me= str_replace('+', ',',trim(@me));
}
{/dede:field}