调用当前栏目或当前文章的关联标签(最常用)
这种方法非常适合在文章列表页或文章内容页使用,因为它能根据当前栏目的上下文动态显示相关标签,提高用户体验和SEO效果。

(图片来源网络,侵删)
场景1:在文章列表页(index.php, list.php等)调用
假设你希望在文章列表的每篇文章后面都加上它的标签。
-
打开你的列表页模板文件(
/templets/default/index.htm或/templets/default/list_article.htm)。 -
找到循环文章的代码块,通常是这样的结构:
{dede:arclist titlelen='40' row='10'} <li> <a href="[field:arcurl/]">[field:title/]</a> <span>[field:pubdate function="MyDate('Y-m-d',@me)"/]</span> </li> {/dede:arclist} -
在
</li>标签之前,添加调用标签的代码。
(图片来源网络,侵删)完整代码示例:
{dede:arclist titlelen='40' row='10'} <li> <a href="[field:arcurl/]">[field:title/]</a> <span>[field:pubdate function="MyDate('Y-m-d',@me)"/]</span> <!-- 在这里添加调用标签的代码 --> <div class="tags"> 标签: {dede:tag row='5' getall='0'} <a href="[field:link/]">[field:tagname/]</a> {/dede:tag} </div> </li> {/dede:arclist}
场景2:在文章内容页(article_article.htm)调用
在文章详情页,通常希望在文章标题下方或正文上方显示这篇文章的所有标签。
-
打开你的文章内容页模板文件(
/templets/default/article_article.htm)。 -
在你希望显示标签的位置(
[field:title/]下面),添加以下代码。
(图片来源网络,侵删)代码示例:
<h1 class="title">[field:title/]</h1> <!-- 调用当前文章的标签 --> <div class="article-tags"> <strong>相关标签:</strong> {dede:tag row='8' getall='0'} <a href="[field:link/]">[field:tagname/]</a> {/dede:tag} </div> <div class="content"> [field:body/] </div>
代码参数说明:
{dede:tag}: 这是织梦调用标签的标签。row='5': 表示调用 5个 标签,你可以根据需要修改这个数字,0或不设置表示调用所有标签。getall='0': 非常重要!getall='0': 只调用 当前文章 的标签,这是在列表页和内容页最常用的设置。getall='1': 调用 全站所有 的标签,这通常用在首页的“热门标签”或“随机标签”模块里。
[field:link/]: 标签链接的URL。[field:tagname/]: 标签的名称。
调用全站的热门标签或随机标签(用于首页侧边栏等)
这种方法不依赖特定文章,而是从全站范围内筛选标签,非常适合放在首页的侧边栏、页脚等位置。
场景:在首页调用“热门标签”
-
打开你的首页模板文件(
/templets/default/index.htm)。 -
在你希望显示热门标签的位置(例如侧边栏),添加以下代码。
代码示例(调用热门标签):
<div class="hot-tags"> <h3>热门标签</h3> <ul> {dede:tag row='20' sort='hot'} <li><a href="[field:link/]">[field:tagname/]</a> ([field:total/])</li> {/dede:tag} </ul> </div>
场景:在首页调用“随机标签”
如果你想展示一些不那么热门的标签,增加多样性,可以使用随机标签。
代码示例(调用随机标签):
<div class="random-tags">
<h3>随机标签</h3>
<ul>
{dede:tag row='20' sort='rand'}
<li><a href="[field:link/]">[field:tagname/]</a></li>
{/dede:tag}
</ul>
</div>
代码参数说明(新增):
sort='hot': 按标签被使用的 次数(热度) 从高到低排序。sort='rand': 随机排序。[field:total/]: 显示该标签被使用的总次数,这个字段只有在sort='hot'时才有意义。
调用指定ID的标签(高级用法)
有时候你可能只想调用某个特定标签下的文章,或者只显示某个标签本身,这需要用到标签的ID。
-
如何获取标签ID?
- 登录织梦后台 -> 核心 -> 频道标签 -> TAG标签管理。
- 将鼠标悬停在你想要的标签名称上,浏览器状态栏会显示链接,如
.../tag.php?/tagid/123/,这里的123就是该标签的ID。
-
调用指定ID的标签信息 在模板中,你可以直接通过标签ID来获取它的名称和链接。
代码示例:
<!-- 假设标签ID为 123 --> {dede:tag id='123'} 当前标签是:<a href="[field:link/]">[field:tagname/]</a> {/dede:tag}
常见问题与注意事项
-
标签没有内容或显示不正常?
- 检查标签关联:确保你的文章已经被正确地添加了标签,在后台编辑文章时,填写“关键词”并点击“确定”即可。
- 检查参数:最常见的问题是
getall参数用错,在列表页和内容页,请务必使用getall='0'。 - 检查模板缓存:修改模板后,请去后台点击“生成” -> “更新主页HTML”,或者清空一下缓存。
-
如何自定义标签样式?
- 调用标签的代码外层可以加上
class或id,方便你用CSS来美化。 - 给每个标签加上不同的背景色,可以用CSS的
nth-child选择器。
HTML示例:
<div class="tag-cloud"> {dede:tag row='10' getall='0'} <a href="[field:link/]">[field:tagname/]</a> {/dede:tag} </div>CSS示例:
.tag-cloud a { display: inline-block; padding: 2px 8px; margin: 3px; background-color: #f0f0f0; border-radius: 3px; text-decoration: none; } /* 给第1、4、7个标签上色 */ .tag-cloud a:nth-child(3n+1) { background-color: #ff9a9e; color: #fff; } - 调用标签的代码外层可以加上
| 需求场景 | 推荐代码 | 关键参数 |
|---|---|---|
| 文章列表页/内容页(显示当前文章的标签) | {dede:tag row='5' getall='0'}...{/dede:tag} |
getall='0' |
| 首页/侧边栏(显示全站热门标签) | {dede:tag row='20' sort='hot'}...{/dede:tag} |
sort='hot' |
| 首页/侧边栏(显示全站随机标签) | {dede:tag row='20' sort='rand'}...{/dede:tag} |
sort='rand' |
| 特定标签(通过ID调用) | {dede:tag id='123'}...{/dede:tag} |
id='123' |
希望这些详细的解释和代码能帮助你成功在织梦首页调用Tag标签!
