如何使用`archiveList`标签的`type="related"`功能显示相关文章推荐?

📅 👁️ 65

在您的网站上,当访客阅读完一篇文章时,如果能及时看到其他相关联的内容,这不仅能显著提升用户的阅读体验,降低跳出率,还能有效地增加网站的页面浏览量和停留时间。安企CMS为此提供了一个非常方便的标签:archiveList,配合其type="related"属性,就能轻松实现这一功能。

理解archiveListtype="related"的工作原理

archiveList是安企CMS中一个功能强大的内容列表调用标签,它允许您根据多种条件(如分类ID、模块ID、推荐属性等)来获取文章列表。当我们将type属性设置为"related"时,这个标签就会智能地识别当前页面正在展示的文章,并尝试找出与它相关联的其他文章进行推荐。

这个“相关联”的逻辑是多方面的。系统首先会根据当前文章的ID,尝试获取同分类下的临近文章作为相关推荐。此外,为了提供更精确的推荐,archiveList标签还提供了like参数,它有两种主要的用法:

  1. 基于关键词推荐 (like="keywords"):当您为文章设置了明确的关键词(在后台编辑文章时可以填写关键词,多个关键词用英文逗号分隔),并且使用了like="keywords"参数,系统会根据当前文章的第一个关键词来匹配网站中其他具有相同关键词的文章。这对于内容主题明确,且关键词管理规范的网站非常实用。

  2. 基于手动关联推荐 (like="relation"):有时候,您可能希望更精确地控制相关文章的推荐。在安企CMS的后台文章编辑界面,您可以手动指定与当前文章关联的其他文章。通过设置like="relation"参数,archiveList标签就只会显示这些您手动关联的文章,为您提供了极大的灵活性。

如果您没有指定like参数,系统会默认尝试根据当前文章的同分类临近文章进行推荐。

如何在模板中实现相关文章推荐

通常,相关文章推荐会出现在文章详情页内容的下方。以下是一个典型的模板代码示例,展示了如何使用archiveList标签来显示相关文章:

{# 假设您正在文章详情页的模板文件中 #}
{# 在此处展示完当前文章的主要内容,例如:{{archive.Content|safe}} #}

<div class="related-articles-section">
    <h2>相关推荐</h2>
    <ul>
        {% archiveList relatedArticles with type="related" limit="5" like="keywords" %}
            {# 上述代码会尝试获取最多5篇基于关键词的相关文章。
               如果想基于手动关联推荐,请将 like="keywords" 改为 like="relation"
               如果想基于同分类临近文章推荐(默认行为),可以移除 like 参数。
            #}
            {% for item in relatedArticles %}
            <li>
                <a href="{{item.Link}}" title="{{item.Title}}">
                    {% if item.Thumb %}
                        <img src="{{item.Thumb}}" alt="{{item.Title}}">
                    {% else %}
                        {# 如果没有缩略图,可以显示一个默认图片或文字 #}
                        <img src="/public/static/images/default-thumb.jpg" alt="{{item.Title}}">
                    {% endif %}
                    <h3>{{item.Title}}</h3>
                    <p>{{item.Description|truncatechars:80}}</p>
                    <div class="meta-info">
                        <span>发布于:{{stampToDate(item.CreatedTime, "2006-01-02")}}</span>
                        <span>阅读量:{{item.Views}}</span>
                    </div>
                </a>
            </li>
            {% empty %}
                {# 如果没有找到任何相关文章,这里会显示提示信息 #}
                <li><p>暂无相关文章推荐。</p></li>
            {% endarchiveList %}
        </ul>
</div>

在这段代码中:

  • 我们首先创建了一个div容器来包裹整个相关推荐模块。
  • {% archiveList relatedArticles with type="related" limit="5" like="keywords" %} 这行是核心,它调用了archiveList标签。
    • relatedArticles 是我们为获取到的文章列表定义的变量名,您可以在for循环中使用它。
    • type="related" 明确告诉系统我们要获取相关文章。
    • limit="5" 限制了只显示最多5篇文章。您可以根据页面布局和需求调整这个数字。
    • like="keywords" 指定了系统应根据当前文章的关键词来匹配相关文章。如果您希望根据手动关联来推荐,可以改为like="relation"
  • {% for item in relatedArticles %} 循环遍历获取到的每一篇相关文章。
  • item.Linkitem.Titleitem.Thumbitem.Descriptionitem.CreatedTimeitem.Views 等都是文章对象item中可以调用的字段,它们分别代表文章的链接、标题、缩略图、简介、创建时间和浏览量。stampToDate是一个格式化时间戳的辅助标签,能让日期显示得更友好。
  • {% empty %} 是一个非常实用的标签,如果archiveList没有找到任何匹配的相关文章,{% empty %}标签内的内容就会被显示出来,避免页面出现空白或不友好的提示。

优化与注意事项

  • 样式定制:上述代码仅展示了结构,您需要根据网站的整体风格,为.related-articles-section及其内部元素添加相应的CSS样式,使推荐模块美观大方。
  • 内容管理:为了让相关推荐功能发挥**效果,建议您在后台编辑文章时,认真填写文章关键词,或手动关联一些高质量的、与当前文章内容高度相关的文章。
  • 位置选择:相关推荐模块通常放置在文章正文下方、评论区上方,或者侧边栏等位置,具体位置可根据您的网站布局和用户习惯进行调整。

通过以上方法,您就可以在安企CMS的网站上,灵活且高效地为您的读者提供相关文章推荐,从而提升用户体验和内容价值。


常见问题 (FAQ)

Q1: like参数的两种模式(keywordsrelation)有什么区别?

A1: like="keywords"模式是基于内容的自动化推荐。系统会提取当前文章的关键词,然后根据这些关键词匹配网站中其他文章的关键词,找出相似内容进行推荐。这种方式依赖于您文章关键词的准确性。而like="relation"模式则是基于您在后台文章编辑时手动设置的关联文章进行推荐。如果您希望精确控制推荐内容,可以选择手动关联;如果您希望系统根据内容智能匹配,则选择关键词模式。

Q2: 如果没有相关文章被找到,页面会显示什么?

A2: 在示例代码中,我们使用了{% empty %}标签。这意味着如果archiveList标签在执行后没有找到任何匹配的相关文章,页面上就会显示{% empty %}标签内部的内容,例如“暂无相关文章推荐。”这样的提示信息。如果没有{% empty %}标签,那么该区域将是空白的,不会显示任何内容或错误。

Q3: 如何确保推荐的文章真正“相关”而不是随机的?

A3: 要确保相关文章推荐的质量,关键在于后台的内容管理。

  1. 关键词准确性:编辑文章时,务必填写与文章内容高度相关且精准的关键词。
  2. 分类规划:将文章归类到合适的分类,因为系统默认会优先推荐同分类下的文章。
  3. 手动关联:对于特别重要的文章,可以利用后台的手动关联功能,直接指定几篇高质量的相关文章。
  4. 内容优化:确保文章内容本身主题明确,有助于系统更好地理解其主旨并进行匹配。

相关文章

`prevArchive`和`nextArchive`标签如何实现文档的上一篇/下一篇功能?

在您运营网站时,为用户提供流畅的阅读体验是提升网站粘性的关键之一。当用户阅读完一篇文档,如果能轻松跳转到相关联的上一篇或下一篇,无疑会大大增加他们在您网站上的停留时间。安企CMS(AnQiCMS)深知这一点,并提供了非常直观且强大的`prevArchive`和`nextArchive`标签,帮助您轻松实现这一功能。 ### 开启文档间的无缝导航 文档的“上一篇/下一篇”功能

2025-11-08

文档详情页如何通过`archiveDetail`标签显示文章标题、内容、图片等信息?

在安企CMS中管理网站内容,文档详情页无疑是用户获取信息最核心的阵地。如何将每一篇精心撰写的文章,其标题、内容、图片以及各种附加信息,准确而生动地呈现在用户眼前,这就要巧妙运用我们的`archiveDetail`标签了。这个标签是专门为展示单篇文档详情而设计的,它的灵活运用将帮助您轻松构建出功能丰富、体验流畅的详情页面。 首先,让我们来认识一下`archiveDetail`标签的核心作用

2025-11-08

`archiveList`标签如何根据分类、推荐属性或自定义排序显示文章列表?

在安企CMS的模板系统中,`archiveList` 标签是您构建动态内容列表的核心工具。无论是博客的文章列表、产品展示页面,还是新闻资讯模块,`archiveList` 都能帮助您根据多样化的需求,精确地筛选、排序并呈现内容,让您的网站内容区域焕发生机。 ### `archiveList` 的基础:理解它的工作方式 使用 `archiveList` 标签时

2025-11-08

`pageList`和`pageDetail`标签如何用于展示“关于我们”等单页面内容?

在网站运营中,像“关于我们”、“联系方式”或“服务介绍”这类内容,通常以独立页面的形式存在,我们称之为“单页面”。它们不像博客文章那样频繁更新,但却是网站不可或缺的核心信息。安企CMS提供了`pageList`和`pageDetail`这两个标签,让您能够非常灵活且高效地管理和展示这些单页面内容。 ### 后台管理中的“单页面”内容 在深入了解标签用法之前

2025-11-08

`archiveParams`标签如何将文档的自定义字段数据呈现在前端页面?

在安企CMS中,内容的灵活性是我们进行网站运营和内容管理的核心优势之一。除了标题、正文等标准化字段,我们经常需要为不同类型的内容添加特定的自定义信息,比如产品的“品牌”、“型号”、“产地”,或者文章的“作者”、“来源”等。这些自定义字段极大地丰富了内容展示的维度,但如何将这些精心录入的后台数据准确、灵活地呈现在前端页面上,是模板开发时一个重要的考量。 这时

2025-11-08

如何通过`archiveFilters`标签构建产品筛选或房产筛选等复杂搜索界面?

在当今内容爆炸的时代,用户访问网站时,常常希望能够快速找到他们感兴趣的内容。无论是浏览电商平台上的海量商品,还是寻找房产网站上符合心意的住房,一个强大且易用的筛选搜索界面都是提升用户体验的关键。 安企CMS(AnQiCMS)深知这一点,并为此提供了强大的`archiveFilters`标签。这个标签能帮助您轻松构建复杂的产品或房产筛选界面,让您的网站内容更具发现性和互动性

2025-11-08

`tagList`标签如何展示文档的关联标签,并实现标签云效果?

## 巧用 AnQiCMS 的 `tagList` 标签,轻松实现文档关联与标签云展示 在网站内容运营中,标签(Tag)扮演着至关重要的角色。它们不仅能帮助用户快速找到感兴趣的内容,提升站内导航的便捷性,还能通过关键词的聚合,优化搜索引擎对网站内容的理解,从而带来更好的 SEO 表现。AnQiCMS 充分考虑了这一需求,内置了强大的标签功能,并提供了灵活的模板标签 `tagList`

2025-11-08

`tagDetail`标签如何获取并显示特定标签的详细信息?

安企CMS (AnQiCMS) 提供了一系列强大的模板标签,帮助网站运营者高效地展示内容。其中,`tagDetail` 标签是用于获取并显示特定标签详细信息的关键工具。无论是构建精美的标签详情页,还是在其他页面引用标签的相关数据,`tagDetail` 都能提供灵活且直观的解决方案。 ### `tagDetail` 标签:获取标签详细信息的利器 在安企CMS中

2025-11-08