内容页可通过$navinfor变量提取关键词字段或查询TAGS数据表调用当前文章TAGS;2. 使用SQL精准读取phome_enewstagsdata表中绑定的TAGS;3. 列表页利用灵动标签结合PHP循环输出每篇文章的TAGS,适用于模板调用。

在使用帝国CMS建站时,调用文章的TAGS标签有助于提升页面的SEO效果和用户阅读体验。下面介绍几种常用的调用文章TAGS标签的方法,适用于内容页、列表页或JS调用场景。
1. 内容页直接调用当前文章TAGS
在内容模板(如 show.html)中,可以通过 $navinfor 变量获取当前文章信息,并结合程序代码输出TAGS。
// 示例代码:[?php
$tagstr = '';
$tags = $navinfor['keywords']; // 假设关键字字段存储了TAGS,或使用专用TAGS字段
$tagarr = explode(',', $tags); // 多个TAGS以英文逗号分隔
foreach($tagarr as $tag) {
if($tag) {
$tagstr .= ''.$tag.' ';
}
}
echo $tagstr;
?]
说明:如果关键词字段 keywords 用于存放TAGS,可用此方法。若使用的是帝国CMS自带的TAGS功能,需从 phome_etableztags 数据表中读取。
2. 调用系统TAGS(通过SQL查询)
若文章启用了“TAGS”功能(即在后台为文章绑定TAGS),可通过SQL方式获取。
// 示例代码:[?php
$tsql = $empire->query("SELECT tagname FROM [!db.pre!]enewstagsdata WHERE id=$navinfor[id] AND classid=$navinfor[classid]");
$tagstr = '';
while($tr = $empire->fetch($tsql)) {
$tagstr .= ''.$tr['tagname'].' ';
}
echo $tagstr;
?]
说明:此方法精准调用绑定到该文章的TAGS,适合规范使用TAGS功能的情况。
3. 列表页调用每篇文章的TAGS
在列表模板中,需使用灵动标签([e:loop])配合PHP代码实现逐条输出。
// 灵动标签示例:[e:loop={0,10,3,0}]
$tagstr = '';
$tsql = $empire->query("SELECT tagname FROM [!db.pre!]enewstagsdata WHERE id=$bqr[id] AND classid=$bqr[classid]");
while($tr = $empire->fetch($tsql)) {
$tagstr .= ''.$tr['tagname'].' ';
}
?>
=$bqr[title]?>
[/e:loop]
说明:在[e:loop]中使用PHP查询每篇文章对应的TAGS,适合列表页展示。
4. 使用JS调用(适用于缓存或静态化场景)
若页面生成静态,可创建动态JS文件来异步加载TAGS。
新建一个 tags.php 文件,输出JS格式内容:
[?php
@header('Content-Type: text/javascript; charset=utf-8');
$id = (int)$_GET['id'];
$classid = (int)$_GET['classid'];
$tagstr = '';
$tsql = $empire->query("SELECT tagname FROM [!db.pre!]enewstagsdata WHERE id=$id AND classid=$classid");
while($tr = $empire->fetch($tsql)) {
$tagstr .= ''.$tr['tagname'].' ';
}
echo "document.write('" . addslashes($tagstr) . "');";
?]
前端调用:
基本上就这些常用方法。根据实际需求选择合适的方式,注意安全过滤和URL编码,避免出现乱码或XSS问题。灵活运用,TAGS能有效增强网站内链结构。










