正确的方法是调用文章的摘要或截取文章正文的前N个字符。

(图片来源网络,侵删)
下面我将为你详细讲解几种最常用和最有效的方法,从最推荐到备选方案排列。
使用系统自带的摘要功能(最推荐、最规范)
这是织梦官方设计的标准方法,也是最佳实践,它要求你在后台发布文章时,手动填写摘要。
后台设置摘要
- 登录织梦后台,进入“[内容] -> [添加文档]”或“[修改文档]”。
- 在文章编辑界面的下方,你会找到一个名为 “ 的文本框。
- 在这里手动填写你希望在列表页显示的内容,比如文章的核心观点、精彩段落等。
前台调用摘要

(图片来源网络,侵删)
在列表页模板(通常是 list_article.htm)中,使用织梦的底层模板字段 {dede:field.description/} 来调用你刚刚填写的摘要。
示例代码:
{dede:list pagesize='10'}
<li>
<h3><a href="[field:arcurl/]">[field:title/]</a></h3>
<!-- 调用摘要 -->
<p class="summary">[field:description/]...</p>
<span class="info">发布时间:[field:pubdate function="MyDate('Y-m-d',@me)'/] | 作者:[field:writer/]</span>
</li>
{/dede:list}
优点:
- SEO友好是独立可控的,可以针对性地优化关键词。
- 加载速度快:摘要字段长度固定,不会因文章过长而拖慢页面。
- 规范整洁经过人工筛选,列表页展示更专业。
自动截取文章正文内容(常用、便捷)
如果你不想每次都手动填写摘要,可以使用织梦的 cn_substr 函数来自动截取文章正文的前N个字符作为摘要。
前台调用代码
在列表页模板中,使用 {dede:field.body} 获取文章正文,并用 cn_substr 函数进行截取。
示例代码:
{dede:list pagesize='10'}
<li>
<h3><a href="[field:arcurl/]">[field:title/]</a></h3>
<!--
自动截取文章正文前150个字符作为摘要
function="cn_substr(@me, 150)"
@me 代表当前字段的值,即 field:body
150 是你想要截取的字符数
-->
<p class="summary">[field:body function='cn_substr(@me, 150)'/]...</p>
<span class="info">发布时间:[field:pubdate function="MyDate('Y-m-d',@me)'/] | 作者:[field:writer/]</span>
</li>
{/dede:list}
注意事项
- 包含HTML标签:直接截取
field:body可能会把HTML标签(如<p>,<img>,<strong>)也截断在摘要里,导致显示错乱。 - 解决方案:为了解决这个问题,织梦提供了一个非常强大的函数
strip_tags,它可以移除所有的HTML标签。
优化后的自动截取代码(推荐使用):
{dede:list pagesize='10'}
<li>
<h3><a href="[field:arcurl/]">[field:title/]</a></h3>
<!--
1. strip_tags(@me) 先移除 body 中的所有HTML标签
2. cn_substr(...) 再对纯文本进行截取,这里截取200个字符
-->
<p class="summary">[field:body function='cn_substr(strip_tags(@me), 200)'/]...</p>
<span class="info">发布时间:[field:pubdate function="MyDate('Y-m-d',@me)'/] | 作者:[field:writer/]</span>
</li>
{/dede:list}
调用文章简介(次选)
如果你的文章模型中添加了“文章简介”这个字段(在“后台-核心-频道模型-内容模型管理”中编辑),你也可以调用它。
后台添加简介字段
确保你的文章模型里有一个名为 description 或类似名称的简介字段,并且它在“发布表单”中是显示的。
前台调用代码
调用方法和调用摘要完全一样,底层模板字段也是 {dede:field.description/}。
<p class="summary">[field:description/]...</p>
区别与选择:
- (
description):通常用于SEO,显示在<meta name="description" ...>标签里,也可能在列表页显示。 - 简介 (
introtext或其他自定义字段):更多是作为文章的一个辅助说明,不一定在列表页默认调用。
在实际使用中,方法一和方法二的组合是最灵活的:
- 如果后台填写了摘要,优先显示摘要。
- 如果后台没有填写摘要,则自动截取正文。
你可以通过修改织梦的核心文件来实现这个逻辑,但对于大多数用户来说,手动选择一种方法并保持一致性就足够了。
总结与建议
| 方法 | 优点 | 缺点 | 推荐度 |
|---|---|---|---|
| 调用手动摘要 | SEO最佳、速度快、内容可控 | 需要额外手动输入内容 | ★★★★★ (最推荐) |
| 自动截取正文 | 无需手动、方便快捷 | 可能截断HTML标签、SEO效果略差、内容可能不完整 | ★★★★☆ (非常常用) |
| 调用简介字段 | 灵活,可自定义 | 需要额外配置模型,非标准做法 | ★★☆☆☆ (次选) |
最终建议:
- 首选方法一:养成在后台填写摘要的好习惯,这对你的网站SEO和用户体验都有巨大好处。
- 备选方法二:如果网站文章量巨大,实在没时间手动写摘要,使用
cn_substr(strip_tags(@me), 200)是一个非常不错的自动化方案,能保证基本的展示效果。
选择最适合你网站运营模式的方法即可。
