在网站运营中,当内容数量庞大时,如何高效、美观地展示这些内容,同时确保用户能方便地浏览,是提升用户体验的关键。如果一股脑地将所有内容堆砌在同一页面,不仅加载缓慢,更会让访问者望而却步。此时,内容分页就显得尤为重要。它将海量信息拆分成若干小块,既减轻了页面加载负担,又让用户能够按照自己的节奏,一步步探索感兴趣的内容。AnQiCMS 提供了一个强大且灵活的 pagination 标签,让我们能够轻松实现和控制网站内容的翻页显示效果。

pagination 标签概览

AnQiCMS 的 pagination 标签专为生成和控制列表型内容(如文章列表、产品列表等)的翻页导航而设计。它通常与数据列表标签(如 archiveList)紧密配合,确保当列表内容超出单页显示限制时,能够自动生成一整套完整的翻页机制。这意味着你无需手动计算页数或构建复杂的 URL 逻辑,pagination 标签会帮你打理好这一切。

如何配合 archiveList 标签使用

要让 pagination 标签发挥作用,首先需要确保你的内容列表标签(例如 archiveList)已经配置为支持分页模式。在 archiveList 标签中,关键在于将 type 参数设置为 page。例如:{% archiveList archives with type="page" limit="10" %}。这里的 limit="10" 定义了每页显示的内容数量。当 type 设置为 page 时,archiveList 不再只返回固定数量的列表项,而是准备好一个可分页的数据集,供 pagination 标签进一步处理,生成对应的翻页链接和页码信息。

pagination 标签的 show 参数

pagination 标签的灵活性体现在其 show 参数上。这个参数允许你控制在翻页导航中实际显示多少个页码按钮。例如,show="5" 意味着在当前页码前后,最多只会显示总共 5 个页码按钮(不包括“首页”、“上一页”、“下一页”、“末页”)。这样的设计有助于保持翻页导航的简洁,避免页码过多导致界面混乱。

{# 假设我们有一个archiveList配合分页的数据集 #}
<div>
    {% archiveList archives with type="page" limit="10" %}
        {# ... 遍历 archives 显示内容 ... #}
    {% endarchiveList %}

    <div class="pagination">
        {% pagination pages with show="5" %}
            {# 这里将渲染出页码导航 #}
        {% endpagination %}
    </div>
</div>

pagination 标签的内部可用字段解析

pagination 标签在执行后,会返回一个包含丰富分页信息的 pages 对象。通过这个对象,你可以精细地控制翻页导航的每一个细节:

  • TotalItems: 当前分页数据集中所有