在安企CMS中,如何通过 archiveList 标签展示热门文章列表?

在内容运营中,将网站上的热门文章清晰地展示给访客,不仅能有效提升用户体验,引导用户发现更多精彩内容,还能通过内容的有效分发,间接促进搜索引擎优化(SEO)。安企CMS提供了强大且灵活的模板标签功能,其中 archiveList 标签就是实现这一目标的核心工具。本文将引导您如何利用 archiveList 标签,根据文章浏览量轻松创建热门文章列表。

理解 archiveList 标签的核心作用

archiveList 标签是安企CMS中用于获取和展示文档列表的万能工具。它可以根据多种条件筛选内容,例如按分类、模型、推荐属性,并提供灵活的排序方式。对于创建“热门文章”列表,我们主要关注其排序功能,特别是如何根据浏览量进行排序。

使用 archiveList 时,您通常会为其指定一个变量名(比如 archives),以便在随后的循环中访问文章数据。标签的结构大致如下:

{% archiveList 变量名称 with 参数1="值1" 参数2="值2" %}
    {% for item in 变量名称 %}
        {# 在这里展示文章内容 #}
    {% empty %}
        {# 没有内容时的提示 #}
    {% endfor %}
{% endarchiveList %}

实战演练:一步步实现热门文章列表

要实现热门文章列表,您需要在网站模板文件中进行编辑。安企CMS的模板文件通常存放在 /template 目录下,并以 .html 为后缀。

1. 基础列表的构建

首先,我们来创建一个最基础的文章列表框架。假设您想在侧边栏或首页的一个区块中显示5篇热门文章。

<div class="hot-articles-list">
    <h3>热门文章</h3>
    <ul>
        {% archiveList archives with type="list" limit="5" %}
            {% for item in archives %}
                <li><a href="{{ item.Link }}">{{ item.Title }}</a></li>
            {% empty %}
                <li>暂无文章。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</div>

这段代码会列出5篇最新发布的文章标题和链接,因为默认的 order 参数通常是按ID降序(即最新发布)。

2. 加入浏览量排序,打造“热门”文章

要让列表真正“热门”起来,我们需要引入 order 参数,并将其值设置为 views desc。这里的 views 指的是文章的浏览量,而 desc 表示降序排列,即浏览量从高到低显示。

<div class="hot-articles-list">
    <h3>热门文章</h3>
    <ul>
        {% archiveList archives with type="list" limit="5" order="views desc" %}
            {% for item in archives %}
                <li><a href="{{ item.Link }}">{{ item.Title }}</a></li>
            {% empty %}
                <li>暂无热门文章。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</div>

现在,您的列表就会根据文章的浏览量从高到低显示前5篇热门文章了。

3. 丰富热门文章列表的显示内容

仅仅显示标题可能不够,您可能还希望显示浏览量、发布日期等信息,让列表更加直观。archiveList 循环中的 item 对象提供了丰富的文章字段供您调用,例如 item.Views(浏览量)和 item.CreatedTime(创建时间)。

为了更好地显示日期,我们可以使用 stampToDate 标签对时间戳进行格式化。

<div class="hot-articles-list">
    <h3>热门文章</h3>
    <ul>
        {% archiveList archives with type="list" limit="5" order="views desc" %}
            {% for item in archives %}
                <li>
                    <a href="{{ item.Link }}">{{ item.Title }}</a>
                    <span>(浏览:{{ item.Views }} 次,发布于:{{ stampToDate(item.CreatedTime, "2006-01-02") }})</span>
                </li>
            {% empty %}
                <li>暂无热门文章。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</div>

这段代码会显示文章标题、链接,以及它们的浏览量和格式化后的发布日期。您可以根据需求添加 item.Thumb(缩略图)或 item.Description(简介)等更多信息。

4. 可选:按指定分类或模型筛选热门文章

如果您希望在特定分类下展示该分类的热门文章,或者仅显示某个内容模型(如“产品”模型)的热门内容,可以额外添加 categoryIdmoduleId 参数。

例如,显示分类ID为10的文章模型(假设ID为1)的热门文章:

<div class="category-hot-articles-list">
    <h3>本分类热门文章</h3>
    <ul>
        {% archiveList archives with type="list" moduleId="1" categoryId="10" limit="5" order="views desc" %}
            {% for item in archives %}
                <li>
                    <a href="{{ item.Link }}">{{ item.Title }}</a>
                    <span>(浏览:{{ item.Views }} 次)</span>
                </li>
            {% empty %}
                <li>本分类暂无热门文章。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</div>

通过灵活组合这些参数,您可以创建出满足不同场景需求的热门内容列表。

一些实用小贴士

  • 样式定制: 上述代码仅提供了HTML结构,您可以根据网站的整体设计,为 divullia 标签添加自定义的CSS样式,使其更美观。
  • 浏览量统计: 安企CMS内置了流量统计功能,文章的浏览量(views)数据正是来源于此,无需额外配置即可自动累积。
  • 缓存机制: 热门文章列表通常访问量大,安企CMS自带的静态缓存机制能够有效减轻服务器压力,确保页面加载速度。如果列表内容更新不及时,可以尝试手动清除后台缓存。
  • 应用场景: 您可以将热门文章列表放置在网站首页、文章详情页的侧边栏、分类页的顶部,甚至作为邮件营销内容的推荐部分,提升内容曝光率和用户互动。

通过 archiveList 标签,安企CMS让热门文章的展示变得简单高效。您只需几行代码,即可根据浏览量动态呈现最受关注的内容,为访客提供更佳的浏览体验。


常见问题 (FAQ)

Q1: 浏览量是如何统计的,准确性如何保证? A1: 安企CMS内置了流量统计功能,文章的浏览量(Views)是系统自动记录的。每次用户访问文章详情页,系统都会增加一次浏览计数。后台的“流量统计与爬虫监控”模块可以帮助您查看详细的流量数据。虽然无法排除所有非真实用户访问(如爬虫),但对于一般网站的“热门”判断,这个数据是足够准确和有参考价值的。

Q2: 如果文章的浏览量相同,排序规则是怎样的? A2: 当多篇文章的浏览量相同时,安企CMS会按照默认的次要排序规则进行排序。通常情况下,系统会退回到文章的ID进行降序排列,这意味着浏览量相同的文章中,最新发布的文章会排在前面。如果您对次要排序有特定需求,可能需要进一步定制标签功能或进行二次开发。

Q3: 我可以显示特定时间段内的热门文章吗?例如“本周热门”或“本月热门”? A3: archiveList 标签目前没有直接提供按时间范围过滤“热门”文章的参数。 order="views desc" 会统计文章发布以