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

📅 👁️ 65

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

archiveList 的基础:理解它的工作方式

使用 archiveList 标签时,您首先需要定义一个变量来接收获取到的文章数据,例如 archives。然后通过 for 循环遍历这个变量,将每篇文章的详细信息展示出来。基本的结构通常是这样的:

{% archiveList archives with type="list" limit="10" %}
    {% for item in archives %}
        <!-- 在这里展示每篇文章的信息,例如标题、链接、简介等 -->
        <a href="{{item.Link}}">{{item.Title}}</a>
        <p>{{item.Description}}</p>
    {% empty %}
        <!-- 如果没有找到文章,将显示这里的内容 -->
        <p>暂时没有相关内容。</p>
    {% endfor %}
{% endarchiveList %}

这里,type="list" 表示我们希望获取一个普通列表,limit="10" 则限制了显示的文章数量。{% empty %} 标签是一个非常实用的特性,当列表为空时,您可以优雅地显示一条提示信息,而不是让页面留白。

精准定位:根据分类筛选文章

在许多场景下,我们可能需要展示特定分类下的文章,比如“公司新闻”或“行业动态”。archiveList 标签通过 moduleIdcategoryId 参数,可以非常方便地实现这一需求。

首先,moduleId 参数用于指定您要获取内容的模型类型,例如文章模型(通常 moduleId="1")或产品模型(通常 moduleId="2")。这是基础,确保您在正确的模型下操作。

接着,categoryId 参数允许您指定一个或多个分类的ID。如果您想获取 ID 为 5 的分类下的文章,可以这样设置:

{% archiveList archives with moduleId="1" categoryId="5" limit="10" %}
    <!-- 展示文章列表 -->
{% endarchiveList %}

如果您想同时获取多个分类的文章,比如 ID 为 58 的分类,只需用逗号将它们隔开:categoryId="5,8"

此外,如果您只想显示当前分类的文章,而不包括其子分类的内容,可以使用 child="false" 参数:

{% archiveList archives with moduleId="1" categoryId="5" child="false" limit="10" %}
    <!-- 仅显示ID为5的分类下的文章,不包含子分类文章 -->
{% endarchiveList %}

通过这些参数的组合,您可以灵活地控制文章的来源。

突出重点:利用推荐属性显示特定内容

安企CMS的后台允许您为文章设置多种推荐属性,如“头条[h]”、“推荐[c]”、“幻灯[f]”等。这些属性在网站运营中非常有用,可以帮助您在特定区域突出显示重要内容。archiveList 标签通过 flag 参数,能够轻松地筛选出具有这些属性的文章。

例如,要在首页的某个模块显示“推荐”文章,您可以这样使用 flag="c"

{% archiveList archives with moduleId="1" flag="c" limit="5" %}
    <!-- 展示5篇推荐文章 -->
{% endarchiveList %}

如果您想在文章列表中同时显示文章的推荐属性标识,例如显示一个“推荐”或“头条”的图标,可以在 archiveList 标签中设置 showFlag="true"。然后在 for 循环内部通过 {{item.Flag}} 来获取文章的推荐属性代码,并根据这些代码做相应的样式或图标处理。

{% archiveList archives with moduleId="1" showFlag="true" limit="5" %}
    {% for item in archives %}
        <h3>
            <a href="{{item.Link}}">{{item.Title}}</a>
            {% if item.Flag == 'h' %}<span class="flag-headline">头条</span>{% endif %}
            {% if item.Flag == 'c' %}<span class="flag-recommend">推荐</span>{% endif %}
        </h3>
    {% endfor %}
{% endarchiveList %}

这样,带有“头条”或“推荐”属性的文章就能在页面上醒目地展示出来。

秩序井然:实现文章的自定义排序

文章的排序方式直接影响用户的阅读体验。archiveList 标签提供了多种 order 参数值,让您可以根据实际需求调整文章的排列顺序。

最常用的排序方式包括:

  • id desc:按照文章ID降序排列,通常意味着最新发布的文章在前。
  • views desc:按照文章浏览量降序排列,通常显示最热门的文章。
  • sort desc:按照后台自定义的“显示顺序”字段降序排列。这意味着您可以在后台手动调整文章的顺序,非常适合手动管理推荐内容。

例如,如果您想在某个区域显示最新发布的文章,并限制数量为8篇,可以这样写:

{% archiveList archives with moduleId="1" order="id desc" limit="8" %}
    <!-- 展示8篇最新文章 -->
{% endarchiveList %}

而要展示网站中最受欢迎的文章,则可以按浏览量排序:

{% archiveList archives with moduleId="1" order="views desc" limit="10" %}
    <!-- 展示10篇最热门文章 -->
{% endarchiveList %}

融会贯通:多种条件组合使用

archiveList 标签的真正强大之处在于其参数可以灵活组合。您可以同时使用 moduleIdcategoryIdflagorder 来构建非常精确的文章列表。

例如,获取 ID 为 5 的分类下,带有“推荐”属性的,且按浏览量从高到低排序的前10篇文章:

{% archiveList archives with moduleId="1" categoryId="5" flag="c" order="views desc" limit="10" %}
    <!-- 展示特定分类下推荐且热门的文章 -->
    {% for item in archives %}
        <h4><a href="{{item.Link}}">{{item.Title}}</a></h4>
        <p>浏览量: {{item.Views}}</p>
    {% endfor %}
{% endarchiveList %}

您还可以利用 excludeCategoryIdexcludeFlag 参数来排除特定的分类或推荐属性,进一步精细化您的内容筛选。

###

相关文章

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

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

2025-11-08

如何获取并显示某个具体分类的名称、描述和缩略图?

在网站运营中,清晰有效地展示分类信息对于用户体验和搜索引擎优化都至关重要。一个具体分类的名称能帮助用户快速理解内容主题,简洁的描述能提供更多背景信息,而直观的缩略图则能吸引用户点击。安企CMS(AnQiCMS)提供了强大且灵活的模板标签功能,让您能够轻松获取并呈现这些关键的分类信息,无论是构建导航菜单、设计分类列表页,还是优化搜索引擎结果。 ###

2025-11-08

如何使用`categoryList`标签在首页或侧边栏展示文章/产品分类列表?

在构建和优化网站时,清晰的导航结构对于用户体验和搜索引擎优化都至关重要。安企CMS(AnQiCMS)为我们提供了强大的模板标签,其中`categoryList`标签便是用于在网站首页或侧边栏灵活展示文章或产品分类列表的核心工具。通过它,我们可以轻松地将网站内容组织得井井有条,让访问者一眼就能找到他们感兴趣的信息。 ### 为什么分类列表如此重要? 想象一下,当访问者来到一个内容丰富的网站

2025-11-08

`breadcrumb`标签如何自动生成面包屑导航,并自定义首页显示文字?

网站的用户体验,很大程度上取决于导航的便捷性与清晰度。当访问者深入网站内容时,一个友好的“面包屑导航”(Breadcrumb Navigation)能清晰地指示当前位置,并提供返回上级页面的快速路径。安企CMS(AnQiCMS)深谙此道,提供了功能强大且易于使用的`breadcrumb`标签,让网站管理者无需复杂编码,即可自动生成路径,甚至能灵活定制首页的显示文字。 ### 自动生成面包屑导航

2025-11-08

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

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

2025-11-08

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

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

2025-11-08

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

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

2025-11-08

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

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

2025-11-08