如何在安企CMS中调用并显示最新的文章列表?

📅 👁️ 61

作为一款功能丰富且易于使用的内容管理系统,安企CMS在内容展示方面提供了极大的灵活性。当您需要向访客展示网站上最新的文章,例如在首页、侧边栏或特定专题页,安企CMS能够帮助您轻松实现这一需求。

要实现“在安企CMS中调用并显示最新的文章列表”,核心在于灵活运用其强大的模板标签系统,特别是 archiveList 标签。安企CMS的模板引擎类似Django,允许您通过简洁的标签语法在页面中调用各类数据。

理解 archiveList 标签的基础用法

archiveList 标签是安企CMS用于获取文章列表数据的核心标签。它的基本结构如下:

{% archiveList archives with ... %}
    {% for item in archives %}
        {# 在这里显示每篇文章的具体信息 #}
    {% endfor %}
{% endarchiveList %}

在这里,archives 是您为文章列表定义的一个变量名,可以根据您的喜好命名。item 则代表循环中的每一篇文章对象,您可以通过 item.字段名 的方式来获取文章的各项属性。

关键参数:如何获取“最新”文章

要调用并显示“最新”文章,您需要关注 archiveList 标签的几个关键参数:

  1. order 参数: 这是决定文章排序方式的核心。为了获取最新文章,您可以将 order 设置为 id desc(按文章ID降序,通常文章ID越大代表发布越晚,即越新)或 CreatedTime desc(按文章创建时间降序)。例如:order="id desc"
  2. limit 参数: 用于控制您希望显示的文章数量。如果您想在页面上显示5篇最新文章,可以设置 limit="5"
  3. moduleId 参数: 安企CMS支持多种内容模型(如文章、产品等)。为确保只调用文章类型的内容,您需要明确指定文章的模型ID。通常,文章模型的ID为 1,因此可以设置为 moduleId="1"
  4. type 参数: 如果您只是想显示一个简单的文章列表而无需分页,可以将 type 设置为 list

显示文章的详细信息

{% for item in archives %} 循环内部,您可以访问 item 对象的各种属性来显示文章的标题、链接、发布日期、缩略图等。常用的属性包括:

  • item.Title:文章标题。
  • item.Link:文章详情页链接。
  • item.Description:文章简介。
  • item.CreatedTime:文章创建时间(时间戳格式,需要格式化)。
  • item.Views:文章浏览量。
  • item.Thumb:文章缩略图地址。
  • item.Logo:文章封面首图地址。

对于 CreatedTime 这样的时间戳字段,安企CMS提供了一个方便的 stampToDate 函数来格式化显示。例如,{{stampToDate(item.CreatedTime, "2006-01-02")}} 会将时间戳格式化为“年-月-日”的日期格式。

实际操作示例:调用并显示5篇最新文章

假设您希望在网站的某个位置显示5篇最新的文章,包含标题、发布日期和文章链接,并且有缩略图就显示缩略图。您可以将以下代码片段放置在您的安企CMS模板文件(例如 index.htmlpartial/aside.html 等)中:

<div class="latest-articles-list">
    <h3>最新文章</h3>
    <ul>
        {% archiveList archives with moduleId="1" order="id desc" limit="5" type="list" %}
            {% for item in archives %}
                <li>
                    <a href="{{ item.Link }}">
                        {% if item.Thumb %}
                            <img src="{{ item.Thumb }}" alt="{{ item.Title }}" class="article-thumb">
                        {% else %}
                            {# 如果没有缩略图,可以显示一个默认图片或省略图片区域 #}
                            <img src="/public/static/images/default-thumb.webp" alt="默认缩略图" class="article-thumb">
                        {% endif %}
                        <div class="article-info">
                            <h4>{{ item.Title }}</h4>
                            <p class="article-date">{{ stampToDate(item.CreatedTime, "2006-01-02") }}</p>
                        </div>
                    </a>
                </li>
            {% empty %}
                <li>暂无最新文章。</li>
            {% endfor %}
        {% endarchiveList %}
    </ul>
</div>

代码解析:

  • {% archiveList archives with moduleId="1" order="id desc" limit="5" type="list" %}
    • archives:将获取到的文章列表存储到名为 archives 的变量中。
    • moduleId="1":指定获取文章模型(ID通常为1)下的内容。
    • order="id desc":按照文章ID降序排列,确保获取到的是最新发布的文章。
    • limit="5":限制只显示5篇文章。
    • type="list":以列表形式获取,不处理分页。
  • {% for item in archives %}:循环遍历 archives 变量中的每一篇文章对象。
  • {% if item.Thumb %}:判断当前文章是否有缩略图。如果有,则显示。
  • <img src="{{ item.Thumb }}" alt="{{ item.Title }}" class="article-thumb">:显示缩略图,alt 属性有助于SEO和用户体验。
  • <h4>{{ item.Title }}</h4>:显示文章标题。
  • <p class="article-date">{{ stampToDate(item.CreatedTime, "2006-01-02") }}</p>:格式化并显示文章发布日期。
  • {% empty %}:这是一个非常实用的标签,当 archives 列表为空时,会显示 <li>暂无最新文章。</li>,避免页面出现空白。

通过上述步骤和示例代码,您就可以在安企CMS中灵活地调用并显示最新的文章列表了。安企CMS的强大之处在于其可定制的模板系统,让您能够根据网站的实际需求,自由组合和展示内容。


常见问题 (FAQ)

1. 如何只显示某个特定分类下的最新文章?

您可以在 archiveList 标签中添加 categoryId 参数来指定分类ID。例如,要显示分类ID为10的最新5篇文章,您可以这样写: {% archiveList archives with moduleId="1" categoryId="10" order="id desc" limit="5" type="list" %}。您可以在后台的“内容管理”->“文档分类”中找到对应分类的ID。

2. 如何实现最新文章列表的分页显示?

如果最新文章列表很长,您可能希望进行分页。这需要将 archiveList 标签的 type 参数设置为 page,并配合 pagination 标签使用。例如: {% archiveList archives with moduleId="1" order="id desc" limit="10" type="page" %} (在循环后) {% pagination pages with show="5" %}...{% endpagination %}。具体的 pagination 标签用法,建议查阅安企CMS的“模板标签和使用方法”文档,其中有详细的分页代码示例。

3. order="id desc"order="CreatedTime desc" 在获取最新文章时有什么区别?

order="id desc" 是根据文章在数据库中的唯一标识符(ID)进行降序排列。在大多数情况下,文章ID是递增的,所以ID越大通常代表发布时间越晚,从而达到获取最新文章的效果。 order="CreatedTime desc" 则是直接根据文章的创建时间字段进行降序排列。这在理论上是更精确的“最新”定义。 在实际使用中,两者的效果往往非常接近,您可以根据个人偏好或特定需求选择其一。如果您的文章发布时间有严格的先后顺序,推荐使用 CreatedTime desc

相关文章

如何在文档详情页获取并显示上一篇/下一篇文档的链接和标题?

在网站内容运营中,为文档详情页添加“上一篇”和“下一篇”导航,是一个提升用户体验、引导用户深入浏览和优化网站内部链接的常用策略。AnQiCMS 作为一款以内容管理为核心的系统,充分考虑了这些需求,并提供了直观简便的模板标签,让您能够轻松实现这一功能。 ### AnQiCMS 实现“上一篇/下一篇”导航的优势 AnQiCMS 的模板系统设计精巧,采用了类似 Django 模板引擎的语法,通过

2025-11-08

如何在文档列表中实现按最新、最热等多种方式排序显示内容?

当您管理网站内容时,如何有效地组织和展示文档列表,使其既符合用户习惯又能突出重点,是一个非常关键的环节。安企CMS(AnQiCMS)提供了灵活而强大的功能,让您能够轻松实现文档内容的多种排序和筛选,无论是按最新发布、最受欢迎还是其他自定义方式。 在 AnqiCMS 中,文档列表的灵活展示主要通过强大的 `archiveList` 模板标签来实现。这个标签是您获取和控制内容列表的核心工具

2025-11-08

网站闭站时,如何自定义显示给用户的提示信息页面?

当网站需要进行维护、升级或暂时停止服务时,向访问者展示一个友好的提示页面,而非冰冷的错误信息,是提升用户体验和维护品牌形象的关键。安企CMS(AnQiCMS)深谙此道,提供了灵活便捷的方式,让您可以轻松自定义网站闭站时的提示信息页面。 ### 安企CMS的闭站处理机制 安企CMS内置了网站状态管理功能,让您能够一键控制网站的对外可见性。在后台的“全局功能设置”中

2025-11-08

如何设置网站Logo和备案号,并确保它们在页面上正确显示?

## 安企CMS:网站Logo和备案号的设置与页面显示指南 一个专业且合规的网站,离不开清晰的品牌标识(Logo)和必要的法律信息(如备案号)。安企CMS为您提供了便捷的方式来管理这些重要的网站元素,并确保它们在页面上正确展示。本文将详细介绍如何在安企CMS后台设置您的网站Logo和备案号,以及如何在网站模板中正确引用它们。 ### 一、在后台进行设置 首先

2025-11-08

安企CMS的文档详情页如何自定义展示布局和内容?

在安企CMS中,文档详情页的自定义展示布局和内容是实现网站个性化和满足特定业务需求的关键。作为网站内容的最终呈现形式,详情页不仅承载着核心信息,更直接影响用户体验和搜索引擎优化效果。安企CMS提供了高度灵活的模板机制和丰富的数据标签,让用户可以根据自身创意,轻松打造独一无二的文档详情页。 ### 理解安企CMS文档详情页的基础构成 安企CMS的模板系统采用类似Django模板引擎的语法

2025-11-08

如何使用安企CMS模板标签获取特定分类下的文档列表?

安企CMS(AnQiCMS)凭借其强大的模板功能,为网站内容的灵活展示提供了坚实的基础。在网站运营中,我们经常会遇到需要展示特定分类下的文档列表这一需求,例如新闻动态、产品介绍、博客文章等。掌握如何利用模板标签实现这一功能,将大大提升网站内容的组织效率和用户体验。 ### 核心标签:`archiveList`的妙用 在安企CMS中,要获取特定分类下的文档列表

2025-11-08

在安企CMS文章内容中如何实现图片的懒加载显示效果?

在网站运营中,图片加载速度对用户体验和搜索引擎优化(SEO)至关重要。尤其是当文章中包含大量图片时,一次性加载所有图片会显著增加页面加载时间,消耗用户流量,并可能导致用户过早离开。此时,图片懒加载(Lazy Load)技术便能大显身手。 懒加载的核心思想是,只在图片即将进入用户可视区域时才开始加载它们,而不是在页面初始加载时就全部加载。这能有效减少页面首次加载所需的时间和资源

2025-11-08

如何设置和显示安企CMS网站的导航菜单(顶部/底部)?

网站导航是用户探索网站内容的关键路径,也是搜索引擎理解网站结构的重要参考。在安企CMS(AnQiCMS)中,您可以灵活地设置和管理网站的顶部及底部导航菜单,以满足不同的设计和功能需求。 本文将详细介绍如何在安企CMS后台配置导航菜单,以及如何在网站前端模板中将其显示出来。 ## 第一部分:后台配置导航菜单 在安企CMS中,导航菜单的设置集中在后台的“后台设置”区域

2025-11-08