如何使用 `archiveList` 标签在 AnQiCMS 首页展示指定分类的最新文章列表?

📅 👁️ 65

在 AnQiCMS 中,网站首页是访客了解您内容的第一站,因此高效地展示最新、最相关的文章至关重要。AnQiCMS 提供了强大且易于使用的模板标签系统,其中 archiveList 标签就是您在首页精准展示指定分类最新文章的得力助手。

archiveList 标签简介:首页动态内容的核心

archiveList 标签是 AnQiCMS 模板引擎中用于获取文档列表的核心工具。它不仅能够获取常规的文章列表,还能灵活地筛选、排序,甚至实现分页显示。无论是需要在侧边栏展示热门文章,还是在首页突出特定分类的最新动态,archiveList 都能轻松应对。通过合理配置其参数,您可以精确控制要展示的内容范围和呈现方式。

核心参数解析:精准定位您的文章列表

要实现在 AnQiCMS 首页展示指定分类的最新文章列表,我们需要了解 archiveList 标签的几个关键参数:

  • moduleId: 这个参数用于指定您要获取内容的模型ID。在 AnQiCMS 中,通常文章属于“文章模型”,其ID默认为 1。如果您创建了其他内容模型(如“产品模型”),则需要根据实际情况设置相应的ID。
  • categoryId: 这是指定分类文章的关键参数。您可以传入单个分类的ID(例如 categoryId="1"),也可以传入多个分类的ID,用英文逗号 , 分隔(例如 categoryId="1,2,3")。这意味着您可以在一个列表中同时展示多个相关分类的文章。
  • limit: 决定了您希望展示的文章数量。比如 limit="5" 将显示最新的 5 篇文章。在首页这样的场景中,通常我们会限制显示数量以保持页面的简洁。
  • order: 用于指定文章的排序方式。为了获取“最新”文章,您可以使用 order="id desc"order="CreatedTime desc",表示按文章ID或创建时间倒序排列。
  • type: 这个参数决定了列表的类型。对于首页展示,我们通常只希望简单列出几篇文章而不需要分页,这时可以设置 type="list"。如果您需要分页,可以设置为 type="page",并结合 pagination 标签使用。

实战演练:在首页展示特定分类的最新文章

假设您的网站有一个“新闻中心”分类(分类ID为 10)和一个“行业动态”分类(分类ID为 12),您希望在首页各自展示这两个分类的最新文章,各显示 5 篇。

首先,您需要进入 AnQiCMS 后台,在“内容管理”下的“文档分类”中找到“新闻中心”和“行业动态”这两个分类的 ID。假设“新闻中心”的 ID 是 10,“行业动态”的 ID 是 12

接下来,我们需要编辑您当前主题的首页模板文件。通常,首页模板文件位于 /template/您的主题目录/index/index.html

打开 index/index.html 文件,您可以像下面这样来插入代码:

{# 在首页展示“新闻中心”分类的最新 5 篇文章 #}
<section class="latest-news">
    <h2>新闻中心</h2>
    <ul>
        {% archiveList newsArchives with moduleId="1" categoryId="10" limit="5" order="id desc" type="list" %}
            {% for item in newsArchives %}
                <li>
                    <a href="{{ item.Link }}" title="{{ item.Title }}">
                        <img src="{{ item.Thumb }}" alt="{{ item.Title }}" onerror="this.src='/static/images/default-thumb.webp'">
                        <h3>{{ item.Title }}</h3>
                        <p class="summary">{{ item.Description|truncatechars:100 }}</p>
                        <span class="date">{{ stampToDate(item.CreatedTime, "2006-01-02") }}</span>
                    </a>
                </li>
            {% empty %}
                <li>暂无新闻内容。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</section>

{# 在首页展示“行业动态”分类的最新 5 篇文章 #}
<section class="industry-trends">
    <h2>行业动态</h2>
    <ul>
        {% archiveList trendArchives with moduleId="1" categoryId="12" limit="5" order="id desc" type="list" %}
            {% for item in trendArchives %}
                <li>
                    <a href="{{ item.Link }}" title="{{ item.Title }}">
                        <img src="{{ item.Thumb }}" alt="{{ item.Title }}" onerror="this.src='/static/images/default-thumb.webp'">
                        <h3>{{ item.Title }}</h3>
                        <p class="summary">{{ item.Description|truncatechars:100 }}</p>
                        <span class="date">{{ stampToDate(item.CreatedTime, "2006-01-02") }}</span>
                    </a>
                </li>
            {% empty %}
                <li>暂无行业动态。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</section>

在这段代码中:

  1. 我们使用 <section> 标签将每个分类的文章列表清晰地区分开来,并添加了标题 <h2>
  2. {% archiveList newsArchives with ... %}{% archiveList trendArchives with ... %} 分别加载了两个不同的文章列表,并将结果存储在 newsArchivestrendArchives 变量中。
  3. moduleId="1" 确保我们只获取文章模型下的内容。
  4. categoryId="10"categoryId="12" 精确指定了要获取的分类。
  5. limit="5" 将每个列表的文章数量限制为 5 篇。
  6. order="id desc" 保证了获取到的是最新的文章。
  7. type="list" 表示这是一个简单的列表显示,不涉及分页。
  8. {% for item in newsArchives %} 循环遍历获取到的文章,item 变量在每次循环中代表一篇具体的文章。
  9. 我们展示了文章的标题 (item.Title)、链接 (item.Link)、缩略图 (item.Thumb)、简介 (item.Description) 和发布日期 (stampToDate(item.CreatedTime, "2006-01-02"))。
    • item.Description|truncatechars:100 使用了 truncatechars 过滤器,将文章简介截断到 100 个字符,并在末尾添加 ...,保持简介的简洁。
    • stampToDate(item.CreatedTime, "2006-01-02") 则将文章的 Unix 时间戳格式化为 年-月-日 的可读日期格式。
    • onerror="this.src='/static/images/default-thumb.webp'" 这是一个实用的技巧,当文章没有缩略图或者缩略图加载失败时,会自动显示一个默认的占位图。
  10. {% empty %} 块用于当指定分类下没有文章时,显示友好的提示信息。

保存模板文件后,刷新您的网站首页,就可以看到两个指定分类的最新文章列表,整齐地展示在您的访客面前了。

总结

AnQiCMS 的 archiveList 标签为网站运营者提供了极大的灵活性,让您能够根据业务需求,在网站的任何位置精确控制内容的展示。无论是首页、侧边栏还是专题页面,结合 categoryIdlimitorder 等参数,您都可以轻松构建出动态、吸引人的文章列表,有效提升网站的用户体验和内容营销效果。掌握这个标签的使用,将让您的 AnQiCMS 网站更具活力和表现力。


常见问题解答 (FAQ)

Q1: 如何在 AnQiCMS 后台查看分类的 ID?

A1: 您可以登录 AnQiCMS 后台,导航到“内容管理” -> “文档分类”页面。在这个页面中,您会看到所有已创建的分类列表。每个分类行的最左侧通常会显示其唯一的数字 ID。此外,当您点击某个分类进行编辑时,浏览器地址栏的 URL 中也会包含 id= 参数,其值就是该分类的 ID。

**Q2: 我想在首页展示所有分类

相关文章

AnQiCMS 模板中如何动态显示当前页面的文档标题?

在安企CMS的模板设计中,动态地显示当前页面的文档标题是一项基础而重要的功能。它不仅关乎用户在浏览网站时的直观感受,也是搜索引擎优化(SEO)策略中不可或缺的一环。安企CMS提供了简洁高效的方式来实现这一需求,让我们一起来探索如何在模板中灵活运用。 ## 理解安企CMS的模板上下文 在安企CMS的模板渲染机制中,系统会智能地为每个页面提供当前页面的相关数据上下文

2025-11-09

如何通过自定义URL别名控制分类、文档、单页面的前端链接显示形式?

在网站运营中,前端链接(URL)的显示形式对于用户体验、搜索引擎优化(SEO)以及品牌形象都至关重要。一个简洁、有意义且结构良好的URL不仅能帮助用户更好地理解页面内容,也能提升搜索引擎抓取和排名的效率。安企CMS(AnQiCMS)深知这一需求,提供了灵活的自定义URL别名功能,让我们可以根据需要精确控制分类、文档和单页面在网站前端的链接表现。 ###

2025-11-09

AnQiCMS是否支持在图片地址后面自动附加缩略图参数进行显示?

在网站内容运营中,图片无疑是吸引访问者的重要元素,而图片的加载速度和显示效果直接影响着用户体验。为了优化网站性能,合理使用缩略图变得尤为关键。许多网站系统会通过在图片地址后附加参数的方式,动态生成或调用不同尺寸的图片。那么,安企CMS在这个方面是如何处理的呢?它是否支持在图片地址后面自动附加缩略图参数来显示呢? 经过对安企CMS功能机制的了解,我们可以明确地说,安企CMS在图片缩略图的处理上

2025-11-09

如何精确截取字符串或HTML内容并添加省略号以适应布局需求?

在网站内容运营中,我们经常会遇到这样的需求:为了页面布局的整洁和阅读体验的流畅,需要将过长的文本(无论是纯文本还是包含HTML标签的内容)进行截取,并在末尾加上省略号。AnQiCMS 提供了非常实用的模板过滤器,能够帮助我们精准地完成这项任务,同时确保内容的显示既美观又不会破坏HTML结构。 ### 理解截取的需求与AnQiCMS的解决方案 想象一下,在一个文章列表中

2025-11-09

AnQiCMS 网站如何实现多语言内容切换并在前台正确显示?

在构建面向全球用户的网站时,提供多语言内容是至关重要的一步。AnQiCMS 作为一个功能全面的内容管理系统,为实现这一目标提供了灵活且强大的支持。本文将详细探讨如何在 AnQiCMS 网站上实现多语言内容的切换与在前台的正确显示。 ## 打造全球化网站:AnQiCMS 的多语言能力概览 AnQiCMS 的多语言支持旨在帮助网站运营者轻松应对全球化内容推广的需求

2025-11-09

在 AnQiCMS 模板中,如何获取并显示网站的备案号和版权信息?

在网站的运营中,备案号(ICP)和版权信息是建立用户信任、符合法律法规不可或缺的要素。对于使用 AnQiCMS 搭建的网站来说,无论是企业官网还是个人博客,清晰地展示这些信息都至关重要。幸运的是,AnQiCMS 提供了非常直观和灵活的方式来管理和显示这些内容。 接下来,我们将一起了解如何在 AnQiCMS 模板中获取并显示网站的备案号和版权信息。 ###

2025-11-09

如何通过 AnQiCMS 的模板标签自定义显示文章的发布时间和浏览量?

在网站内容的展示中,文章的发布时间和浏览量是向读者传达信息、提升内容价值感的重要元素。一个清晰的发布时间能够让读者了解内容的即时性或时效性,而浏览量则可以反映内容的受欢迎程度。AnQiCMS 凭借其灵活的模板机制,让我们可以轻松自定义这些关键信息的显示方式,以适应不同网站的设计风格和用户需求。 本文将深入探讨如何利用 AnQiCMS 提供的模板标签,精准控制文章发布时间与浏览量的显示

2025-11-09

AnQiCMS 支持哪些内容模型,以及它们在前端如何灵活展示?

在安企CMS中,内容不仅仅是简单的文章或产品,它是一个充满活力的生态系统,允许用户根据实际业务需求自由定义和展示各类信息。这种高度的灵活性源于其强大的内容模型支持,以及前端模板引擎带来的无限可能。 ### 灵活多样的内容模型:信息的骨架 安企CMS的核心优势之一,便是其高度灵活的内容模型。它并非预设几种固定的内容类型让你受限选择,而是提供了一个强大的机制,让用户可以像搭建积木一样

2025-11-09