使用灵动标签调用当前文章TAGS,通过SQL查询phome_enewstagsdata表,结合$navinfor[id]和$classid获取关联标签,代码中限制显示数量为10,标题截取24字符,链接格式为[/tag/($tagid)]。

在帝国CMS的内容页中调用当前文章的TAGS标签,可以通过灵动标签结合SQL查询实现。默认情况下,帝国CMS不会直接提供一个变量来输出TAGS,需要从phome_tagsdata表中读取关联数据。
1. 使用灵动标签调用当前文章TAGS
将以下代码添加到内容页模板中合适位置(如正文下方):
[ecmsinfo]"SELECT tagname FROM [!db.pre!]enewstags LEFT JOIN [!db.pre!]enewstagsdata ON [!db.pre!]enewstags.tagid = [!db.pre!]enewstagsdata.tagid WHERE [!db.pre!]enewstagsdata.id='$navinfor[id]' AND [!db.pre!]enewstagsdata.classid='$navinfor[classid]'",10,24,0,"",0,"[/tag/($tagid)]","[/tag/($tagid)]"[/ecmsinfo]说明:
-
$navinfor[id]表示当前文章ID -
$navinfor[classid]表示当前栏目ID -
10是显示数量限制 -
24是标题截取字数 -
"[/tag/($tagid)]"是链接格式,$tagid会自动替换为实际TAG ID
2. 更灵活的方式:使用PHP代码调用
开启模板支持PHP代码后(在模板修改页面勾选“使用程序代码”),可用如下PHP方式:
php $tagstr = ''; $tsql = $empire->query("SELECT t.tagname,t.tagid FROM [!db.pre!]enewstags t, [!db.pre!]enewstagsdata td WHERE td.id='$navinfor[id]' AND td.classid='$navinfor[classid]' AND t.tagid=td.tagid ORDER BY t.tagid DESC"); while ($tr = $empire->fetch($tsql)) { https://www.php.cn/link/3ba0e6d211dbba5f6b63786af5313615 = "/e/tags/?tagid=" . $tr['tagid']; // 可改为伪静态链接格式 $tagstr .= "" . $tr['tagname'] . " "; } echo $tagstr; ?>优点是更易自定义样式和链接格式。
3. 注意事项
- 确保文章已绑定TAGS,否则无法显示
- 若使用自定义TAGS链接规则(如伪静态),需同步修改生成的URL路径
- 建议对输出做缓存处理,避免频繁查询影响性能










