网站标签是网站的重要组成部分,它不尽可以增强网站的用户体验,而且能丰富网站内链,提高网站在搜索引擎中的表现。织梦DedeCMS有非常强大的标签功能,dede:tag标签可以调用文章的标签,全站热门标签等等,但是无法在首页、列表页面调用相关文章的标签。
怎么解决织梦DedeCMS在首页、列表页面调用文章Tag标签的问题呢?那就是二次开发一个函数,这个函数也比较简单。打开DEDECMS根目录include文件夹下的common.func.php文件,这个文件是织梦DedeCMS专门用来存放我们二次开发的函数的。在最底部 ?> 前面加入以下代码:
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='$aid'"); $tsql->Execute('t'); while($row = $tsql->GetArray('t',MYSQL_ASSOC)){ $tags .= "".$row['tag']."";}return $tags;}
已经自定义了函数,那么怎么首页或者列表页面使用它呢?在文章页可以使用如下的标签调用:
{dede:field.id function="listtag(@me)"/}
在首页或者列表页如下的标签调用:
[field:id function="listtag(@me)"/]
查看上面的代码,发现实现这个功能也是非常简单。举一反三一下,我们可以自定义各种函数来解决一些问题,如栏目文档数据统计。