织梦首页如何调用文章内容?

99ANYc3cd6
预计阅读时长 16 分钟
位置: 首页 织梦建站 正文

准备工作:理解织梦的标签结构

在织梦中,所有内容调用都通过特定的标签完成,这些标签通常由大括号 和 包围。

织梦首页调用文章内容
(图片来源网络,侵删)
  • {dede:arclist}: 这是调用文章列表最核心、最强大的标签,几乎所有首页的文章列表都是用它来实现的。
  • {dede:field}: 这个标签用于在 {dede:arclist} 循环内部,获取当前文章的某个具体字段,比如标题、发布时间等。
  • [field:属性/]: 这是 {dede:arclist} 标签内部用来调用字段值的简写形式,是最常用的写法。

调用文章摘要(最常用、最推荐)

通常是在后台发布文章时,在“或“简介”栏目中填写的,这样做的好处是:

  1. 加载速度快通常比正文短得多,能显著提升首页打开速度。
  2. 布局美观:摘要长度可控,便于在首页进行统一的排版。
  3. SEO友好:摘要可以作为 description 标签的内容,有助于搜索引擎理解页面。

适用场景:首页新闻列表、产品简介、博客文章摘要等。

代码示例

{dede:arclist typeid='' row='10' titlelen='40' infolen='200'}
  <li>
    <span class="title">[field:title/]</span>
    <span class="info">[field:pubdate function="MyDate('Y-m-d', @me)"/]</span>
    <p class="summary">[field:info/]</p>
  </li>
{/dede:arclist}

代码解析

  • {dede:arclist ...}: 开始调用文章列表。
  • typeid='': 指定要调用的栏目ID,如果为空,则调用所有顶级栏目。typeid='1,2' 表示调用ID为1和2的栏目及其子栏目。
  • row='10': 设置调用文章的数量,这里是10篇,len='40'`: 设置标题显示的长度,这里是40个字符(一个汉字算一个字符)。
  • infolen='200': 这是关键! 设置摘要显示的长度,这里是200个字符,如果后台填写的摘要超过200字符,将被截断。
  • [field:title/]: 调用文章标题。
  • [field:pubdate function="MyDate('Y-m-d', @me)"/]: 调用文章发布时间,并用 function 函数将其格式化为 年-月-日 的格式。
  • [field:info/]: 这是调用摘要的核心! 它直接输出你在后台文章编辑框下方“或“简介”字段中填写的内容。

调用文章正文的一部分(不推荐,但有时需要)

如果你没有在后台填写摘要,或者想直接从文章正文中截取一部分作为首页展示内容,可以使用这种方法。

⚠️ 重要提示:

织梦首页调用文章内容
(图片来源网络,侵删)
  1. 性能问题:需要读取完整的文章正文内容,如果文章很长,会拖慢首页加载速度。
  2. 样式混乱:正文可能包含复杂的HTML标签(如<p>, <img>, <span>等),直接截断可能会破坏页面布局,或者输出不完整的HTML标签。

适用场景:仅在没有摘要,且文章内容格式简单时使用。

代码示例

{dede:arclist typeid='' row='10' titlelen='40'}
  <li>
    <span class="title">[field:title/]</span>
    <p class="content">
      [field:body/]
    </p>
  </li>
{/dede:arclist}

代码解析

  • [field:body/]: 这个标签会输出文章的完整正文内容
  • 为了只显示一部分,我们需要配合 php 代码来截断,通常我们会使用织梦的 cn_substr 函数。

优化后的代码(截取正文前200个字符)

{dede:arclist typeid='' row='10' titlelen='40'}
  <li>
    <span class="title">[field:title/]</span>
    <p class="content">
      [field:body function='cn_substr(@me, 200)'/]
    </p>
  </li>
{/dede:arclist}
  • function='cn_substr(@me, 200)': 这段代码的意思是,对 body 字段(@me 代表当前字段值)执行 cn_substr 函数,截取前200个字符。

调用文章中的第一张图片

在很多资讯类网站首页,文章列表会以“图文”形式展示,即左边一张图,右边是标题和摘要,调用文章中的第一张图片非常实用。

代码示例

{dede:arclist typeid='' row='10' titlelen='40' infolen='200'}
  <li>
    <div class="img">
      <a href="[field:arcurl/]">[field:imglink/]</a>
    </div>
    <div class="text">
      <h3><a href="[field:arcurl/]">[field:title/]</a></h3>
      <p>[field:info/]</p>
    </div>
  </li>
{/dede:arclist}

代码解析

  • [field:imglink/]: 这是核心标签! 它会自动查找文章正文中的第一张图片,并将其生成一个 <a> 链接,链接地址指向文章详情页,图片地址是原图。
  • [field:arcurl/]: 获取文章的详情页链接,在 <a> 标签中使用,确保点击图片或标题都能跳转到对应文章。

调用文章自定义字段(高级用法)

默认的字段(标题、正文)不能满足需求,比如你想调用文章的“作者来源”、“价格”、“标签”等,这时就需要调用自定义字段。

步骤1:在后台添加自定义字段

织梦首页调用文章内容
(图片来源网络,侵删)
  1. 进入“后台” -> “核心” -> “内容模型管理”。
  2. 选择你的文章模型(通常是“文章”),点击“更改”。
  3. 在“字段管理”中,点击“添加新字段”。
  4. 填写字段名称(如 source)、字段别名(建议用英文,如 source),选择字段类型(文本),然后保存。

步骤2:在文章中填写字段值 发布或编辑文章时,在内容编辑框下方会出现你刚刚添加的字段,填入相应内容。

步骤3:在首页模板中调用

{dede:arclist typeid='' row='10' titlelen='40'}
  <li>
    <h3>[field:title/]</h3>
    <p>来源:[field:source function='htmlspecialchars(@me)'/]</p>
    <p>价格:¥[field:price/]</p>
  </li>
{/dede:arclist}

代码解析

  • [field:source/]: 直接调用你自定义的 source 字段。
  • function='htmlspecialchars(@me)': 一个良好的习惯,对输出的内容进行HTML转义,防止XSS攻击。

总结与最佳实践

调用目标 推荐标签 适用场景 优点
文章摘要 [field:info/] 首页列表、简介 性能好、速度快、布局可控、SEO友好
文章正文片段 [field:body function='cn_substr(...)'/] 无摘要时备用 灵活,但性能差、有样式风险
文章首图 [field:imglink/] 图文资讯列表 效果直观,用户体验好
自定义字段 [field:你的字段名/] 特殊信息展示 扩展性强,满足个性化需求

给你的建议:

  1. 优先使用摘要:养成在后台填写文章摘要的好习惯,这是最高效、最规范的做法。
  2. 善用 typeid:通过 typeid 参数,你可以精准控制首页显示哪些栏目的内容,避免无关内容干扰。
  3. 测试与调整:将代码复制到你的首页模板文件(通常是 /templets/default/index.htm)中后,务必清除网站缓存(后台-系统-SQL工具-清除所有缓存)并刷新首页查看效果。

希望这份详细的指南能帮助你顺利实现织梦首页文章内容的调用!

-- 展开阅读全文 --
头像
大气微电影织梦模板,如何打造视觉盛宴?
« 上一篇 今天
C语言如何直接转换为汇编代码?
下一篇 » 今天
取消
微信二维码
支付宝二维码

目录[+]