`archiveList`标签如何精确控制文档列表的显示数量、排序和筛选条件?

📅 👁️ 79

在安企CMS中,archiveList 标签是用于动态调用和展示文档列表的核心工具。无论是博客文章、产品展示还是新闻动态,这个标签都能帮助您根据特定的需求,灵活地控制文档的显示数量、排序方式以及各种筛选条件。深入理解其各项参数,将使您能够构建出高度定制化且功能强大的内容展示页面。

精确控制文档显示数量:limit 参数的运用

文档列表的数量控制主要通过 limit 参数实现。它决定了每次调用时将显示多少条文档数据。

  • 基本数量限制:如果您希望页面只显示固定数量的文档,例如最新发布的5篇文章,可以直接设置 limit="5"
    
    {% archiveList archives with limit="5" %}
        {# 遍历并显示文档 #}
    {% endarchiveList %}
    
  • 起始位置与数量限制(偏移模式):当您需要从文档列表的特定位置开始获取数据时,可以使用偏移模式。例如,要从第3条文档开始,获取10条文档,可以设置 limit="2,10"(请注意,索引是从0开始计算的,所以“从第3条开始”意味着偏移量为2)。
  • 与分页结合limit 参数与 type="page" 结合使用时,会为分页功能做好准备。在这种模式下,limit 定义了每页显示的文档数量,而实际的分页导航则需要配合 pagination 标签来生成。
    
    {% archiveList archives with type="page" limit="10" %}
        {# 遍历并显示当前页的文档 #}
    {% endarchiveList %}
    {% pagination pages with show="5" %}
        {# 显示分页导航 #}
    {% endpagination %}
    

灵活设置文档排序:order 参数的妙用

order 参数让您能够指定文档列表的排序规则,以满足不同的内容展示逻辑。

  • 按ID排序order="id desc" 会按照文档的ID降序排列,通常用于展示最新的文档(ID越大通常越新)。如果想按升序排列,则为 order="id asc"
  • 按浏览量排序order="views desc" 会根据文档的浏览量降序排列,常用于展示热门或高关注度的文档。
  • 按后台自定义排序:安企CMS后台允许您手动调整文档的排序。此时,使用 order="sort desc"order="sort asc" 可以按照您在后台设定的自定义顺序来显示文档。如果您不指定 order 参数,默认情况下也会根据后台自定义排序(sort desc)进行。

例如,显示最新发布的5篇热门文章:

{% archiveList hotArticles with limit="5" order="views desc" %}
    {# 遍历并显示热门文档 #}
{% endarchiveList %}

精准筛选文档列表:多维度条件设定

archiveList 标签提供了丰富的筛选条件,帮助您精确锁定所需文档。

  • 按内容模型筛选(moduleId: 安企CMS支持自定义内容模型,例如“文章模型”、“产品模型”等。通过 moduleId 参数,您可以指定只获取某个特定内容模型下的文档。例如,moduleId="1" 获取文章模型文档,moduleId="2" 获取产品模型文档。

    {% archiveList products with moduleId="2" limit="10" %}
        {# 显示产品列表 #}
    {% endarchiveList %}
    
  • 按分类筛选(categoryId, excludeCategoryId, child: 这是最常用的筛选方式之一。

    • categoryId="1":只显示ID为1的分类下的文档。可以传入多个分类ID,如 categoryId="1,2,3"
    • excludeCategoryId="4":排除ID为4的分类下的文档。同样支持多个ID。
    • child="true"(默认值):当指定 categoryId 时,同时包含其所有子分类下的文档。
    • child="false":当指定 categoryId 时,只显示该分类本身的文档,不包含子分类。
    • 如果您希望 archiveList 不自动读取当前页面的分类ID,可以明确设置 categoryId="0"
    {# 显示分类ID为1及其子分类下的最新10篇文章 #}
    {% archiveList articles with categoryId="1" child="true" order="id desc" limit="10" %}
        {# ... #}
    {% endarchiveList %}
    {# 只显示分类ID为5的文档,不含子分类 #}
    {% archiveList docs with categoryId="5" child="false" limit="5" %}
        {# ... #}
    {% endarchiveList %}
    
  • 按推荐属性筛选(flag, excludeFlag, showFlag: 在后台编辑文档时,您可以为文档设置“头条[h]”、“推荐[c]”、“幻灯[f]”等推荐属性。

    • flag="c":只显示带有“推荐”属性的文档。可以组合使用,如 flag="h,c"
    • excludeFlag="s":排除带有“滚动”属性的文档。
    • showFlag="true":在文档列表中显示文档的推荐属性,方便您在模板中根据属性做不同展示。
    {# 显示所有带有“幻灯”属性的文档 #}
    {% archiveList slides with flag="f" limit="3" %}
        {# ... #}
    {% endarchiveList %}
    
  • 按搜索关键词筛选(q: 当 type="page" 模式下,q 参数可以用于指定搜索关键词。值得注意的是,如果URL中已包含 q=关键词 的查询参数,archiveList 会自动读取并应用此关键词进行搜索。

    {# 在搜索结果页,显示标题包含“SEO”关键词的文档 #}
    {% archiveList searchResults with type="page" q="SEO" limit="10" %}
        {# ... #}
    {% endarchiveList %}
    
  • 按特定用户筛选(userId: 如果您需要展示某个特定作者或用户发布的文档,可以使用 userId 参数。例如,userId="1"

相关文章

如何为AnQiCMS网站的特定内容(如文档、分类、单页面)自定义独立的显示模板?

在网站运营中,我们时常会遇到需要为特定内容赋予独特“面貌”的场景。可能是一个承载重要信息的“关于我们”页面,需要别具一格的布局;也可能是一系列产品详情,希望展现与众不同的参数对比;甚至是一个内容分类,期待以更具吸引力的方式呈现列表。安企CMS(AnQiCMS)深知这些精细化内容展示的需求,因此提供了一套灵活且强大的模板定制机制,让我们可以为文档、分类和单页面等内容量身打造专属的显示模板

2025-11-08

AnQiCMS支持的自适应、代码适配、PC+Mobile独立模式如何影响网站在不同设备上的显示效果?

在当今多屏互联的时代,网站能否在不同设备上流畅、高效地展现,直接关系到用户体验和品牌形象。AnQiCMS作为一款功能丰富的企业级内容管理系统,深谙此道,为用户提供了三种灵活的网站显示模式,以应对多样化的设备访问需求:自适应、代码适配和PC+Mobile独立模式。理解它们各自的工作原理及其对网站显示效果的影响,对于运营者来说至关重要。 ### 自适应模式

2025-11-08

制作AnQiCMS模板时,如何确保UTF-8编码以避免前端页面乱码?

在使用安企CMS(AnQiCMS)搭建网站时,确保网站前端页面的正常显示,避免出现烦人的乱码,是每个运营者都需要关注的重要细节。其中,模板文件的字符编码是一个关键点。如果模板文件的编码设置不正确,即使网站内容本身没有问题,最终展现在用户面前的页面也可能是一堆无法识别的字符。 **深入理解乱码问题** 当我们谈论网站乱码,通常是指浏览器无法正确识别和显示网页中的文本内容

2025-11-08

如何利用AnQiCMS的Go语言特性实现网站前端内容的极速加载和流畅显示?

在当今快速变化的数字时代,网站的加载速度和内容的流畅显示已成为衡量用户体验和SEO表现的关键指标。安企CMS(AnQiCMS)凭借其基于Go语言的强大基因,为网站前端内容的极速加载和流畅显示提供了坚实的技术支撑。 Go语言以其卓越的性能和并发处理能力而闻名。作为一门编译型语言,Go代码在运行前就被高效地转换成了机器码,这意味着程序执行效率极高。AnQiCMS巧妙地运用了Go语言的这一优势

2025-11-08

如何使用`archiveDetail`标签获取并完整显示特定文档的标题、内容和自定义字段?

在 AnQiCMS 中,展示单个文档的详细内容是网站构建的核心需求之一。无论是文章详情页、产品详情页,还是其他自定义类型的内容展示,我们都需要一种灵活高效的方式来获取并呈现文档的标题、正文以及根据业务需求定义的自定义字段。`archiveDetail` 标签正是为此而生,它能帮助您轻松实现这一目标。 ### 深入了解 `archiveDetail` 标签

2025-11-08

`prevArchive`和`nextArchive`标签如何在文档详情页显示上一篇/下一篇文档的链接和标题?

当我们在AnQiCMS搭建的网站上浏览内容时,一篇篇精心制作的文档为读者带来了价值。为了让读者的阅读体验更加流畅,并鼓励他们探索更多相关内容,在每篇文章的末尾提供“上一篇”和“下一篇”的导航链接显得尤为重要。这不仅能够有效引导用户在网站内进行深度浏览,提升页面访问量和用户粘性,对于网站的内部链接结构和SEO优化也大有裨益。 AnQiCMS作为一款注重用户体验和SEO友好的内容管理系统

2025-11-08

如何使用`categoryList`标签构建多级分类导航或在内容区域展示分类列表?

在安企CMS中,妥善组织网站内容分类是提升用户体验和网站可维护性的重要一环。无论是构建清晰的多级导航菜单,帮助用户快速定位信息,还是在页面内容区域巧妙地展示不同分类的内容,`categoryList`标签都是实现这些功能的核心工具。 ### 核心标签:`categoryList` 简介 `categoryList`标签是安企CMS模板引擎中专门用于获取网站分类列表的标签。它非常灵活

2025-11-08

`categoryDetail`标签如何获取并显示特定分类的名称、描述、Banner图和缩略图?

在AnQiCMS的模板制作中,我们经常需要获取并展示特定分类的详细信息,例如分类的名称、描述,甚至是预设的Banner图和缩略图。`categoryDetail`标签正是为此而生,它能帮助我们轻松地从数据库中提取这些数据,并在网站前端进行灵活展示。 ### 理解 `categoryDetail` 标签的核心作用 `categoryDetail`标签的主要功能是获取单个分类的详细数据

2025-11-08