在内容运营中,一篇优质文章的价值不仅仅在于其本身,更在于它能引导读者发现更多有价值的内容。在文章详情页底部恰当地展示相关推荐内容列表,是提升用户体验、延长访问时长、降低跳出率的有效策略。对于安企CMS(AnQiCMS)的用户来说,实现这一功能是相当直接且灵活的。
AnQiCMS以其简洁高效的架构,为内容管理者提供了强大的模板定制能力。要实现文章详情页的相关推荐,我们主要会用到其灵活的模板标签系统,特别是archiveList标签,它能帮助我们轻松地抓取并展示与当前文章紧密关联的其他内容。
理解AnQiCMS的“相关性”逻辑
在AnQiCMS中,内容的“相关性”可以通过几种方式来定义和实现。这给了我们在设计推荐列表时很大的自由度:
- 基于分类或临近内容自动关联: AnQiCMS默认会根据当前文章的分类,自动匹配同分类下或内容上相近的其他文章。这是一种最常用的自动推荐方式,无需额外配置,系统智能完成。
- 基于关键词的智能匹配: 网站在发布文章时,通常会设置关键词(Tag)。AnQiCMS可以利用文章的关键词进行内容推荐,找到具有相同或相似关键词的文章,从而实现更精准的匹配。
- 基于后台手动指定: 有时候,我们希望某些文章之间存在特定的推荐关系,而这种关系无法通过分类或关键词自动识别。AnQiCMS也支持在后台编辑文章时,手动关联一些推荐文章,这为运营提供了极大的灵活性和精准控制。
了解了这些逻辑后,我们就可以着手在文章详情页的模板中进行设置了。
准备工作:找到你的模板文件
首先,我们需要定位到文章详情页所使用的模板文件。根据AnQiCMS的模板设计约定,文章详情页的默认模板通常位于你的主题目录下,例如:/template/你的主题名称/article/detail.html。如果你有针对特定模型或ID的自定义模板,可能文件名会有所不同,例如/template/你的主题名称/product/detail.html(如果是产品详情页)或/template/你的主题名称/article/detail-10.html(针对ID为10的文章)。
找到并打开这个文件,我们将在其中添加展示相关推荐内容的模板代码。
实战操作:在模板中添加推荐内容
在AnQiCMS的模板中,我们主要使用archiveList标签来获取文档列表。通过搭配不同的参数,就能实现各种推荐逻辑。我们通常会在文章内容展示区域的下方添加推荐内容列表。
1. 自动推荐:基于分类或关键词的智能匹配
这是最常见也最省心的方式。你只需要在模板中简单调用archiveList标签,并指定type="related",AnQiCMS就会智能地根据当前文章的分类、关键词等因素,自动为你推荐相关文章。
{# 在文章详情页的适当位置(例如文章内容下方)添加以下代码块 #}
<div class="related-content-section">
<h2>相关推荐</h2>
<ul>
{# 使用archiveList标签获取相关文档,type="related"是关键 #}
{# limit="5"表示只显示5篇推荐文章 #}
{% archiveList relatedArchives with type="related" limit="5" %}
{% for item in relatedArchives %}
<li>
<a href="{{ item.Link }}" title="{{ item.Title }}">
{% if item.Thumb %}
{# 如果文章有缩略图,则显示缩略图 #}
<img src="{{ item.Thumb }}" alt="{{ item.Title }}" class="recommend-thumb">
{% endif %}
<span class="recommend-title">{{ item.Title }}</span>
</a>
<p class="recommend-desc">{{ item.Description|truncatechars:80 }}</p>
</li>
{% empty %}
{# 如果没有找到相关推荐,显示友好提示 #}
<li>目前没有更多相关推荐内容。</li>
{% endfor %}
{% endarchiveList %}
</ul>
</div>
代码解析:
{% archiveList relatedArchives with type="related" limit="5" %}:这是核心标签,它会从数据库中查询与当前文章相关的文档。relatedArchives:我们给查询到的文章列表起的一个变量名,你可以在{% for %}循环中使用这个变量。type="related":这个参数告诉系统,我们想要的是相关推荐文章。默认情况下,AnQiCMS会根据文章的分类和内容智能匹配。limit="5":限制推荐文章的数量为5篇。你可以根据页面布局和需求调整这个数字。
{% for item in relatedArchives %}:遍历获取到的每一篇推荐文章。{{ item.Link }}:获取文章的链接。{{ item.Title }}:获取文章的标题。{{ item.Thumb }}:获取文章的缩略图链接。在实际使用中,你可以根据缩略图是否存在来决定是否显示图片。{{ item.Description|truncatechars:80 }}:获取文章的简介,并使用truncatechars:80过滤器将其截断为最多80个字符,防止过长。{% empty %}:这是一个非常实用的标签,当relatedArchives列表为空(即没有找到相关推荐文章)时,{% empty %}和{% endfor %}之间的内容就会显示出来。
如果你希望推荐更强调基于文章关键词的匹配,可以添加like="keywords"参数:
{# 基于关键词的自动推荐 #}
{% archiveList relatedArchives with type="related" like="keywords" limit="5" %}
{# ... 循环和显示代码同上 ... #}
{% endarchiveList %}
2. 手动指定推荐:更精准的运营控制
AnQiCMS还允许你在后台文章编辑界面手动关联推荐文章。如果希望仅显示这些由运营人员精心挑选的推荐内容,可以使用like="relation"参数。
”`twig {# 如果只显示后台手动关联的推荐文章 #}
<h2>精选推荐</h2>
<ul>
{% archiveList handpickedArchives with type="related" like="relation" limit="3" %}
{% for item in handpickedArchives