摘要标签如何正确使用?

99ANYc3cd6
预计阅读时长 11 分钟
位置: 首页 DEDE建站 正文

DedeCMS 的内容摘要功能主要用于在列表页、首页等地方,截取文章的一部分内容作为预览,以避免显示全文过长,影响页面布局和用户体验。

dede内容摘要标签
(图片来源网络,侵删)

核心标签是 {dede:field.description/},但它的行为和效果取决于你在后台的设置。


核心标签:{dede:field.description/}

这个标签的作用是调用文章的 简介” 字段。

如何设置“内容简介”?

在发布或编辑文章时,在编辑器下方有一个 简介” 的输入框,你在这里填写的内容,{dede:field.description/} 标签会直接输出的内容。

操作路径: 登录后台 -> 内容 -> 文档列表 -> 选择一篇文章进行编辑 -> 向下滚动,找到 简介” 文本框。

dede内容摘要标签
(图片来源网络,侵删)

使用场景: 当你希望手动为每篇文章撰写一段精炼的摘要时,就应该使用这个方法。


自动截取摘要(最常用)

在实际使用中,绝大多数情况是让系统自动从文章正文中截取一部分作为摘要,DedeCMS 提供了非常灵活的后台设置来实现这一点。

后台设置步骤

这是最关键的一步,设置好之后,{dede:field.description/} 标签的行为就会改变。

操作路径: 登录后台 -> 系统 -> 系统基本参数 -> 核心设置

dede内容摘要标签
(图片来源网络,侵删)

在核心设置页面,找到以下两个选项:

  1. (是/否) 自动简介: 选择“是”,这个选项开启后,系统才会尝试从文章内容中自动生成摘要。
  2. (数字) 自动摘要长度: 输入你希望截取的字符数,输入 200,系统就会截取文章正文的前 200 个字符作为摘要。

注意:

  • 只有当 “自动简介” 设置为 “是” 时,“自动摘要长度” 的设置才生效。
  • 如果某篇文章你手动填写了“内容简介”,那么即使开启了自动简介,系统也会优先使用你手动填写的内容。

模板中的使用

设置好后台后,在你的列表页模板(如 list_article.htm)或首页模板中,直接使用标签即可:

<a href="[field:arcurl/]">[field:title/]</a>
<div class="summary">
    {dede:field.description/}
</div>

高级用法:带“...”或“阅读更多”

更美观,通常会在末尾加上省略号 或一个“阅读更多”的链接,这时就需要使用 function='htmlspecialchars(@me)'mb_substr 等函数来处理。

示例1:简单截断,带省略号

这个示例会先调用后台设置的摘要,如果为空,则从正文截取,然后截取前100个字符并加上 。

{dede:field.description function='(strlen(@me)>100 ? mb_substr(@me,0,100,"utf-8")."..." : @me)'/}

代码解释:

  • @me:代表标签原始的值,即后台设置的“内容简介”或自动截取的摘要。
  • strlen(@me)>100:判断原始摘要长度是否大于100。
  • mb_substr(@me,0,100,"utf-8"):如果大于100,就用 mb_substr 函数截取前100个字符。mb_substr 是多字节字符串截取函数,可以正确处理中文,避免乱码。
  • 在截取的字符串后面加上省略号。
  • @me:如果长度不大于100,则直接输出原始摘要。

示例2:从正文截取,带“阅读更多”链接

这个示例完全忽略后台的“内容简介”,直接从文章正文中截取指定长度的内容,并附上文章链接。

{dede:field.body function='htmlspecialchars(mb_substr(@me,0,200,"utf-8"))'/}
...
<a href="[field:arcurl/]">[查阅全文]</a>

代码解释:

  • field.body:直接调用文章正文内容。
  • htmlspecialchars():将 HTML 特殊字符转换为 HTML 实体,防止正文中的 <p><img> 等标签破坏页面布局。
  • mb_substr(...,0,200,"utf-8"):从正文中截取前200个字符。
  • [field:arcurl/]:文章链接。
  • [查阅全文]:自定义的链接文字。

常用摘要标签总结

作用 备注
{dede:field.description/} 核心摘要标签,优先调用手动填写的“内容简介”,其次调用后台自动生成的摘要。 必须在后台开启“自动简介”并设置长度才有效。
{dede:field.body/} 调用文章 正文全部内容 通常结合 mb_substrhtmlspecialchars 函数进行二次处理,用于自定义截取。
[field:title function='(@me)'/] 调用文章 。 可以用 function 对标题进行处理,如截取、加粗等。
[field:arcurl/] 调用文章的 链接地址 用于制作“阅读更多”的链接。

最佳实践建议

  1. 后台设置是基础:务必进入 “系统基本参数 -> 核心设置”,将 “自动简介” 设为 “是”,并根据你的网站布局设置一个合适的 “自动摘要长度”(如 150-250 字符)。
  2. 模板中优雅处理:在列表页模板中,推荐使用结合了 mb_substrhtmlspecialchars 的写法,这样可以保证摘要的美观和安全。
    <!-- 推荐:安全截取,带省略号 -->
    {dede:field.description function='htmlspecialchars(mb_substr(@me,0,150,"utf-8"))'/}...
  3. 特殊情况特殊处理:对于特别重要的文章,可以手动填写“内容简介”,以获得更精准的摘要,对于普通文章,则依赖系统自动截取,提高效率。

通过以上设置和标签的使用,你就可以灵活地控制 DedeCMS 网站中的文章摘要显示了。

-- 展开阅读全文 --
头像
dede手机网站教程
« 上一篇 04-12
float在C语言中该如何正确使用?
下一篇 » 04-12
取消
微信二维码
支付宝二维码

目录[+]