在织梦中,获取当前文章标题主要有两种标签,它们的使用场景和作用略有不同:

(图片来源网络,侵删)
{dede:field.title/}:这是最常用、最标准的标签,用于直接输出当前文章的标题。{dede:field.seotitle/}:这个标签用于输出当前文章在后台设置的“SEO标题”,如果SEO标题为空,则默认输出文章标题。
下面我们分别详细说明,并给出最佳实践。
{dede:field.title/} - 标准标题标签
这是调用文章标题最核心、最常用的标签。
基本用法
直接在你需要显示标题的HTML位置放置此标签即可。
示例:在文章详情页(article_article.htm)中显示文章标题

(图片来源网络,侵删)
<h1>{dede:field.title/}</h1>
这段代码会输出当前文章的完整标题,织梦CMS如何调用当前文章标题标签详解。
常用属性
{dede:field.title/} 标签支持一些属性,可以让你对输出的标题进行简单的处理。
function内容进行PHP函数处理。htmlspecialchars:对HTML特殊字符进行转义,防止XSS攻击。强烈建议在<title>标签中使用。mb_substr:截取字符串,常用于制作标题摘要。str_replace:字符串替换。
示例1:在<title>标签中使用(推荐)
为了SEO和安全性,网页的<title>标签中的标题最好进行HTML转义。

(图片来源网络,侵删)
function='htmlspecialchars(@me)':@me代表标签原始的值(即文章标题),htmlspecialchars函数会将其中的<,>,&, , 等字符转换为HTML实体,防止恶意代码注入。- {dede:global.cfg_webname/}:在文章标题后面加上网站名称,格式为“文章标题 - 网站名称”,这是标准的SEO做法。
示例2:截取标题前20个字符(制作摘要)
<p class="summary">
{dede:field.title function='mb_substr(@me, 0, 20, "utf-8")'/}...
</p>
mb_substr(@me, 0, 20, "utf-8"):使用mb_substr的开头(0)截取20个字符,并指定编码为utf-8。
{dede:field.seotitle/} - SEO标题标签
这个标签专门用于调用文章的“SEO标题”。
什么是SEO标题?
在织梦后台编辑文章时,有一个“SEO标题”的输入框(如下图所示),你可以在这里专门为这篇文章设置一个用于搜索引擎优化的标题,它可能会比文章正文标题更简洁、包含更多关键词,如果这个字段留空,那么{dede:field.seotitle/}就会默认显示文章的{dede:field.title/}。
基本用法
与{dede:field.title/}的区别
{dede:field.title/}:调用的是文章本身的标题。{dede:field.seotitle/}:调用的是后台设置的“SEO标题”,如果未设置,则回退到文章标题。
最佳实践:
在网站的<title>标签中,优先使用{dede:field.seotitle/},因为这是为SEO专门设计的字段,可以让你为每篇文章精确控制其在搜索引擎结果中显示的标题。
总结与最佳实践
为了方便你理解和使用,这里总结一下在不同场景下的推荐用法。
| 场景 | 推荐标签 | 说明 |
|---|---|---|
文章页面<title> |
{dede:field.seotitle function='htmlspecialchars(@me)'/} |
最佳选择,优先使用SEO标题,并进行HTML转义,兼顾SEO与安全。 |
文章页面<h1> |
{dede:field.title/} |
直接显示文章标题,符合页面结构。<h1>一个页面只应出现一次。 |
| 文章列表页或相关文章 | {dede:field.title/} |
在列表中调用文章标题。 |
| 面包屑导航 | {dede:field.title/} |
在面包屑的最后一项显示当前文章标题。 |
完整示例(article_article.htm文件中的关键部分)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">{dede:field.seotitle function='htmlspecialchars(@me)'/} - {dede:global.cfg_webname/}</title>
<!-- 其他meta标签、CSS、JS等 -->
</head>
<body>
<div class="header">
<!-- 网站头部 -->
</div>
<div class="main-content">
<!-- 面包屑导航 -->
<div class="breadcrumb">
<a href="{dede:global.cfg_cmsurl/}/">首页</a> > <a href="{dede:type typeid='栏目ID'/}">{dede:type typeid='栏目ID'/}</a> > <span>{dede:field.title/}</span>
</div>
<!-- 文章标题 -->
<h1>{dede:field.title/}</h1>
<!-- 文章内容 -->
<div class="article-content">
{dede:field.body/}
</div>
<!-- 其他内容,如上一篇/下一篇等 -->
</div>
<div class="footer">
<!-- 网站底部 -->
</div>
</body>
</html>
希望这个详细的解释能帮助你完全理解织梦中文章标题标签的使用方法!
