织梦首页如何调用文章简介?

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

直接调用文章自带的简介

这是最直接、最规范的方法,要求你在后台发布文章时,必须在“或“简介”字段中填写内容。

操作步骤:

  1. 后台填写简介

    • 登录织梦后台,进入“[内容]” -> “[添加文档]”。
    • 在文章编辑页面,找到 “简介” 这个文本框(通常在标题下方)。
    • 在这里输入你想要显示的文章简介内容。
  2. 在首页模板中调用

    • 进入“[模板]” -> “[默认模板管理]”。
    • 找到并打开首页模板文件,通常是 index.htm
    • 在你需要显示简介的地方,使用以下任意一种标签调用。

调用代码示例

在首页文章列表中调用(最常用)

假设你的首页文章列表是通过 {dedarclist} 标签生成的,你可以直接在 arclist 内部使用 [field:description/]

{dedarclist typeid='0' row='8'}
    <li>
        <a href="[field:arcurl/]">[field:title/]</a>
        <p class="summary">[field:description/]</p>
    </li>
{/dedarclist}
  • [field:description/]:这个标签就是专门用来调用文章的“内容的。
  • class="summary":这里我添加了一个CSS类,方便你通过CSS来控制简介的样式(比如字体大小、颜色、行数等)。

在首页特定推荐位或栏目调用

如果你的首页是通过“首页调用”或推荐位来调用文章的,代码结构会稍有不同,但调用简介的标签不变。

示例1:调用指定栏目下的文章

{dede:arclist typeid='1' row='5'}
    <h3><a href="[field:arcurl/]">[field:title/]</a></h3>
    <div class="intro">[field:description/]...</div>
{/dede:arclist}

示例2:调用首页推荐位(如isrecommend='1'

{dede:arclist isrecommend='1' row='4'}
    <a href="[field:arcurl/]">[field:title/]</a>
    <span>[field:description function='cn_substr(@me, 100)'/]</span>
{/dede:arclist}

自动截取文章正文作为简介

如果你在发布文章时忘记填写“字段,或者希望简介自动从文章正文中截取一部分,可以使用 cn_substr 函数。

操作步骤:

这个方法不需要在后台做任何操作,直接在模板文件中修改代码即可。

调用代码示例

在首页文章列表中自动截取

{dedarclist} 标签内,使用 [field:body/] 调用文章正文,并用 cn_substr 函数进行截取。

{dedarclist typeid='0' row='8'}
    <li>
        <a href="[field:arcurl/]">[field:title/]</a>
        <p class="summary">
            [field:body function='cn_substr(@me, 150)'/]
        </p>
    </li>
{/dedarclist}
  • [field:body/]:调用文章的正文内容。
  • function='cn_substr(@me, 150)':这是一个函数调用。
    • @me:代表当前标签的原始值,在这里就是 [field:body/] 的内容,即文章正文。
    • cn_substr:织梦自带的字符截取函数。
    • 150:表示截取前150个字符,你可以根据需要调整这个数字。

高级用法:过滤HTML标签并截取 可能会把 <p><img> 等HTML标签也截取进来,导致显示不美观,我们可以结合 Html2Text 函数先将正文转为纯文本,再进行截取。

{dedarclist typeid='0' row='8'}
    <li>
        <a href="[field:arcurl/]">[field:title/]</a>
        <p class="summary">
            [field:body function='cn_substr(Html2Text(@me), 150)'/]
        </p>
    </li>
{/dedarclist}
  • Html2Text(@me):将文章正文中的所有HTML标签去除,只保留纯文本。
  • cn_substr(..., 150):再将纯文本内容截取前150个字符。

重要注意事项和最佳实践

  1. 性能考虑

    • 方法一(直接调用)性能最好,因为它只是读取一个已经存在的字段。
    • 方法二(自动截取)每次页面加载时都需要执行函数处理文章正文,如果文章列表很长或文章内容很大,会对网站性能产生轻微影响,但对于中小型网站,影响通常可以忽略不计。
  2. 推荐优先使用方法一

    • 可控性强:作为网站管理员,你可以精确控制每篇文章的简介内容,突出重点,避免出现不相关或尴尬的截断。
    • SEO友好:摘要是搜索引擎用来了解文章内容的重要参考,手动填写更具针对性。
    • 用户体验好:精心编写的简介比机器截取的片段更能吸引用户点击。
  3. 样式控制(CSS)

    • 为了让简介显示更美观,通常会限制其显示的行数,并在末尾加上省略号,这可以通过CSS的 line-clamp 属性实现(现代浏览器支持)。

    CSS 代码 (建议添加到你的样式文件中):

    .summary {
        color: #666;
        font-size: 14px;
        line-height: 1.6;
        margin-top: 5px;
        /* 以下三行用于实现最多显示两行,超出部分显示省略号 */
        display: -webkit-box;
        -webkit-line-clamp: 2; /* 限制为两行 */
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
方法 优点 缺点 适用场景
直接调用 性能好,SEO友好,内容可控 需要手动在后台填写 强烈推荐,所有希望展示简介的地方。
自动截取 无需手动操作,方便快捷 性能稍差,内容可能不理想,容易截断HTML标签 适用于个人博客或不追求极致SEO的网站,作为备用方案。

在实际开发中,最佳实践是:优先要求编辑填写摘要,同时在模板中使用自动截取作为备选方案,这可以通过织梦的if条件语句实现,如果description为空,则自动截取body,但这会增加模板的复杂性,对于大多数网站来说,选择一种方法并坚持使用即可。

-- 展开阅读全文 --
头像
c语言输出100以内素数
« 上一篇 今天
dede循环如何实现不同样式切换?
下一篇 » 今天

相关文章

取消
微信二维码
支付宝二维码