怎样在文章列表页控制每页显示的文章数量和排序方式?

📅 👁️ 73

精细掌控:安企CMS文章列表页数量与排序的实战指南

在内容运营中,网站的文章列表页是用户浏览内容、发现信息的重要窗口。一个布局合理、内容有序的列表页,不仅能提升用户体验,更是搜索引擎优化(SEO)的关键一环。安企CMS深谙此道,通过其强大且灵活的模板标签体系,让您能够轻松精细地控制文章列表页每页显示的数量和内容的排序方式。

这篇文章将带您深入了解如何在安企CMS中,利用核心模板标签来达到这一目标,让您的网站内容展示更具吸引力和逻辑性。

核心标签揭秘:archiveList 的强大功能

在安企CMS中,所有的文章、产品等内容数据的调用,都离不开一个核心标签:archiveList。它就像您的专属内容管理员,能够根据您的指令,从庞大的内容库中精准地筛选并呈现所需文章。控制每页显示数量和排序方式的核心,也正是通过这个标签的不同参数来实现的。

掌握数量:limit 参数与灵活分页

要控制列表页每页显示多少篇文章,archiveList 标签的 limit 参数是您的首选工具。

如果您的列表页不需要分页,只是想简单展示固定数量的文章,例如首页的“最新文章”模块,您可以将 type 参数设置为 list,并配合 limit 参数指定显示数量。比如,只想显示最新的5篇文章:

{% archiveList archives with type="list" limit="5" %}
    {% for item in archives %}
        <li><a href="{{item.Link}}">{{item.Title}}</a></li>
    {% endfor %}
{% endarchiveList %}

而对于需要分页的文章列表页,例如一个分类下的所有文章,您需要将 type 参数设置为 page。此时,limit 参数的作用就变成了定义“每页显示的文章数量”。为了让页面能够展示完整的页码导航,我们还需要引入 pagination 标签:

{% archiveList archives with type="page" limit="10" %} {# 每页显示10篇文章 #}
    {% for item in archives %}
        <li>
            <a href="{{item.Link}}">
                <h5>{{item.Title}}</h5>
                <p>{{item.Description}}</p>
                <span>发布日期:{{stampToDate(item.CreatedTime, "2006-01-02")}}</span>
                <span>浏览量:{{item.Views}}</span>
            </a>
        </li>
    {% endfor %}
{% endarchiveList %}

{# 分页导航 #}
<div class="pagination">
    {% pagination pages with show="5" %} {# 最多显示5个页码按钮 #}
        <ul>
            <li class="{% if pages.FirstPage.IsCurrent %}active{% endif %}"><a href="{{pages.FirstPage.Link}}">首页</a></li>
            {% if pages.PrevPage %}
                <li><a href="{{pages.PrevPage.Link}}">上一页</a></li>
            {% endif %}
            {% for item in pages.Pages %}
                <li class="{% if item.IsCurrent %}active{% endif %}"><a href="{{item.Link}}">{{item.Name}}</a></li>
            {% endfor %}
            {% if pages.NextPage %}
                <li><a href="{{pages.NextPage.Link}}">下一页</a></li>
            {% endif %}
            <li class="{% if pages.LastPage.IsCurrent %}active{% endif %}"><a href="{{pages.LastPage.Link}}">尾页</a></li>
        </ul>
    {% endpagination %}
</div>

在这段代码中,archiveList 通过 limit="10" 告诉系统每页显示10篇文章,而 pagination 标签则负责根据当前页码和总文章数,生成“首页”、“上一页”、“1, 2, 3…”、“下一页”、“尾页”等导航链接,让用户可以在不同页面间自由切换。show="5"参数则控制了中间页码按钮的最大显示数量。

定义顺序:order 参数的多种选择

文章的排序方式直接影响到内容的呈现逻辑和用户的阅读习惯。安企CMS的 archiveList 标签提供了灵活的 order 参数,让您可以根据实际需求,将文章按照不同的逻辑进行排序。

常见的排序方式包括:

  • 最新发布: 通常是网站默认的排序方式,文章按 id desc (ID倒序,即发布时间倒序)显示,最新发布的文章排在前面。
  • 热门文章: 依据文章的浏览量 views 进行排序。例如,order="views desc" 会让浏览量最高的文章优先展示。
  • 后台自定义排序: 如果您希望手动调整文章的顺序,可以在后台编辑文章时设置一个“显示顺序”值,然后使用 order="sort desc" 来调用。数字越小通常越靠前(具体取决于后台设置)。
  • 混合排序: 您也可以组合多种排序规则,例如 order="flag desc|views desc",它会首先按推荐属性(flag)排序,然后在推荐属性相同的情况下,再按浏览量排序。

以下是一个按浏览量从高到低排序的文章列表示例:

{% archiveList hotArchives with type="list" limit="8" order="views desc" %} {# 获取浏览量最高的8篇文章 #}
    <h3>热门文章</h3>
    <ul>
        {% for item in hotArchives %}
            <li><a href="{{item.Link}}">{{item.Title}} - {{item.Views}}次浏览</a></li>
        {% endfor %}
    </ul>
{% endarchiveList %}

综合运用:让内容展示更精准

除了 limitorder 参数,archiveList 标签还支持多种筛选条件,让您可以更精准地控制列表页显示的内容:

  • categoryId 指定文章所属的分类ID。例如 categoryId="1" 只显示ID为1的分类下的文章。
  • moduleId 指定文章所属的模型ID。例如 moduleId="1" 只显示“文章模型”下的内容,而 moduleId="2" 则显示“产品模型”下的内容。
  • flag 根据文章的推荐属性(如“头条[h]”、“推荐[c]”等)进行筛选。例如 flag="h" 只显示被标记为头条的文章。
  • q 在搜索结果页中,通过 q 参数可以匹配文章标题中包含特定关键词的内容。

通过灵活组合这些参数,您可以构建出各种复杂且富有逻辑的文章列表页,无论是按分类、按标签,还是结合热门、推荐等属性,都能在安企CMS中实现。

实践案例:一步步配置列表页

  1. 确定模板文件: 首先,找到您想要修改的列表页对应的模板文件。通常,文章分类列表页的模板命名规则可能是 {模型table}/list.html{模型table}/list-{分类ID}.html
  2. 编写 archiveList 标签: 在模板中,使用 archiveList 标签来获取文章数据,并根据需求设置 typepagelimit 参数来定义每页数量

相关文章

AnQiCMS 模板中,如何自定义文章详情页的URL伪静态规则?

## 优化SEO,提升用户体验:AnQiCMS 自定义文章详情页URL伪静态规则详解 在网站运营中,一个清晰、有意义的URL结构对于搜索引擎优化(SEO)和用户体验都至关重要。想象一下,一个用户看到 `/article.php?id=123&category=news` 这样的链接,和看到 `/news/anqicms-url-guide.html` 这样的链接,哪一个会更吸引他们点击

2025-11-07

如何为AnQiCMS网站首页定制化显示SEO标题、关键词和描述?

在数字化时代,网站首页如同企业的“门面”,其呈现给搜索引擎的信息至关重要。一个精心优化的首页,能够清晰地传达网站的核心价值,吸引目标用户,并为搜索引擎提供友好的抓取信号。在 AnQiCMS 中,定制化显示网站首页的 SEO 标题(Title)、关键词(Keywords)和描述(Description)是一个直观且功能强大的过程,这正是 AnQiCMS 对 SEO 友好特性的一项重要体现

2025-11-07

AnQiCMS 如何根据不同设备(PC/移动端)自适应显示网站内容?

在当今多设备并行的网络环境中,用户可能通过桌面电脑、笔记本、平板或智能手机访问网站。因此,确保网站内容在不同设备上都能良好显示,提供流畅的用户体验,是网站运营成功的关键一环。AnQiCMS作为一个企业级内容管理系统,充分考虑到了这一需求,提供了灵活多样的设备内容自适应显示方案,让用户可以根据自身情况选择最适合的方式。 AnQiCMS在处理网站内容的多设备显示方面,主要提供了三种核心策略

2025-11-07

`thumb` 过滤器如何根据原始图片URL快速生成并展示其缩略图版本?

在网站运营中,图片是吸引用户、丰富内容的关键元素,但过大的图片文件往往会拖慢页面加载速度,影响用户体验和搜索引擎优化。安企CMS深知这一点,因此提供了一个极为便捷且高效的解决方案——`thumb` 过滤器。它能帮助我们轻松地将原始图片智能地转化为适合网页展示的缩略图版本,无需手动处理,大大提升了内容发布的效率和网站的整体性能。 ### 核心功能解析:`thumb` 过滤器的工作原理 这个名为

2025-11-07

如何实现AnQiCMS网站多语言内容的切换和前端显示?

在构建全球化的数字内容平台时,多语言支持无疑是至关重要的一个环节。安企CMS(AnQiCMS)作为一款专为内容运营者设计的管理系统,深谙此道,提供了完善的多语言内容切换和前端显示功能,旨在帮助用户高效地拓展国际市场,触达更广泛的受众。 ## 安企CMS多语言功能概览 AnQiCMS 基于 Go 语言开发,以其高效、可定制和易扩展的特性,成为中小企业和内容运营团队的理想选择

2025-11-07

AnQiCMS 是否支持在模板中直接获取并显示系统配置信息(如网站名称、Logo)?

在构建和维护网站的过程中,我们经常会遇到需要在页面各个位置展示网站基本信息的需求,例如网站的名称、Logo、版权声明、备案号等等。如果这些信息散落在模板的各个角落,一旦需要修改,维护起来将十分繁琐且容易出错。那么,AnQiCMS 在这方面提供了怎样的解决方案呢?它是否支持我们在模板中直接获取并显示这些系统级的配置信息呢? 答案是肯定的。AnQiCMS 作为一款高效的内容管理系统

2025-11-07

如何在前端模板中调用并显示后台设置的联系方式(电话、邮箱、地址)?

在网站运营中,清晰有效地展示联系方式对于建立用户信任、促进沟通交流至关重要。无论是咨询产品、寻求服务支持,还是反馈意见,一个触手可及的电话、邮箱或地址都能大幅提升用户体验。安企CMS(AnQiCMS)充分考虑了这一需求,提供了灵活便捷的方式,让网站管理员在后台统一管理联系信息,并通过简单的模板标签在前端页面上轻松调用和显示。 ### 第一步

2025-11-07

AnQiCMS 如何确保前端显示内容的安全合规性,如敏感词过滤?

在运营网站时,内容的安全合规性是不可或缺的一环,尤其是在当下网络环境日益规范的背景下。对于使用安企CMS(AnQiCMS)的用户而言,系统提供了多方面的功能来帮助我们确保前端显示内容的安全性与合规性,例如用户普遍关注的敏感词过滤。 AnQiCMS在设计之初,就将内容安全置于核心位置。它不仅仅是一个内容发布工具,更是一个致力于为用户提供安全、合规内容管理环境的平台

2025-11-07