AnQiCMS如何展示与当前文章相关的推荐内容列表?

在内容管理和网站运营中,如何有效吸引访客、延长他们在网站上的停留时间,并引导他们发现更多感兴趣的内容,是一个至关重要的问题。安企CMS(AnQiCMS)提供了强大而灵活的机制,帮助我们轻松地在当前文章页面展示相关的推荐内容列表,从而极大地提升用户体验和网站的整体表现。

核心机制:archiveList 标签的 type="related" 属性

AnQiCMS 实现相关内容推荐最直接、最有效的方式,就是利用其强大的 archiveList 标签,并配合 type="related" 属性。当我们身处一个文章详情页时,这个标签能够智能地识别当前文章,并自动抓取与它相关联的其他内容。

默认情况下,type="related" 会根据当前文章所属的分类,推荐出同分类下的一些临近文章,这是一种非常基础且实用的相关性判断。但如果您需要更精准的推荐,AnQiCMS还提供了 like 参数来细化推荐逻辑:

  • like="keywords" 如果您在后台发布文章时,为文章填写了关键词(这些关键词通常也用于SEO优化),那么 archiveList 就可以利用这些关键词来寻找具有相似关键词的其他文章进行推荐。这使得推荐内容能够更加紧密地围绕文章主题。
  • like="relation" 对于需要人工干预的推荐场景,这个参数就派上了用场。您可以在AnQiCMS后台编辑文章时,手动指定与当前文章相关的其他文章。这样,archiveList 就会只展示您明确指定的相关内容,实现高度定制化的推荐。

在模板中调用这类推荐内容非常直观。您只需要在文章详情页的适当位置加入 archiveList 标签,并指定 type="related"limit(控制显示数量),例如:

{# related 相关文档列表展示 #}
<div>
    <h3>相关推荐</h3>
    <ul>
        {% archiveList archives with type="related" limit="5" %}
            {% for item in archives %}
                <li>
                    <a href="{{item.Link}}">
                        <h5>{{item.Title}}</h5>
                        <p>{{item.Description}}</p>
                        {% if item.Thumb %}
                            <img alt="{{item.Title}}" src="{{item.Thumb}}">
                        {% endif %}
                    </a>
                </li>
            {% empty %}
                <li>暂无相关推荐内容。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</div>

在这段代码中,archives 是一个包含了推荐文章信息的数组。您可以轻松地获取每篇文章的标题(item.Title)、链接(item.Link)、缩略图(item.Thumb)和简要描述(item.Description)等信息,并根据您的页面设计进行展示。limit="5" 则限制了最多显示5条推荐内容。

增强相关性:利用标签(Tags)的策略

除了 archiveListtype="related" 属性外,AnQiCMS 的标签功能也是构建相关内容列表的强大工具。标签可以将内容主题化,让同一话题下的文章彼此关联。

在AnQiCMS的后台,当您发布或编辑文章时,可以为文章添加多个“标签”。这些标签有点类似于话题,可以将分散在不同分类下的内容通过共同的关键词联系起来。例如,一篇关于“SEO优化技巧”的文章,可以被打上“SEO”、“网站推广”、“营销策略”等标签。

虽然 archiveList type="related" 已经很智能,但如果您希望推荐内容严格基于某些特定标签,可以采取以下策略:

  1. 展示当前文章的标签: 首先,可以在文章详情页展示当前文章所关联的标签列表。这本身就能给读者提供进一步探索的线索。
    
    <div>
        <strong>当前文章标签:</strong>
        {% tagList tags with itemId=archive.Id limit="10" %}
            {% for item in tags %}
                <a href="{{item.Link}}">{{item.Title}}</a>
            {% endfor %}
        {% endtagList %}
    </div>
    
  2. 基于标签获取更多文章: 接下来,您可以结合 tagDataList 标签。虽然这通常用于标签详情页