如何在AnQiCMS模板中精确格式化显示文章的发布和更新时间戳?

📅 👁️ 86

在网站内容运营中,清晰地展示文章的发布和更新时间,对于提升用户体验、提供内容时效性信息以及优化搜索引擎索引都至关重要。安企CMS(AnQiCMS)在模板中提供了强大而灵活的时间戳格式化功能,让我们可以根据具体需求,将原始的时间戳数据转换为用户友好的日期和时间显示。

要在AnQiCMS模板中精确格式化显示文章的发布和更新时间,我们需要用到一个核心的模板标签:stampToDate。这个标签能够将系统存储的10位时间戳转换为我们想要的日期时间格式。

理解 stampToDate 标签的核心用法

stampToDate 标签的语法结构非常直观:{{stampToDate(时间戳变量, "格式字符串")}}。其中:

  • 时间戳变量:这通常是从文章或列表数据中获取的 CreatedTime(发布时间)或 UpdatedTime(更新时间),它们以10位数字的时间戳形式存在。
  • 格式字符串:这是最关键的部分,它决定了时间戳将如何显示。与其他CMS系统常见的Y-m-d H:i:s等占位符不同,AnQiCMS(因为其基于Go语言开发)采用的是Go语言特有的日期时间格式化参考字符串。这个参考字符串是固定的2006-01-02 15:04:05。您无需记住这个字符串的含义,只需要将其作为模板,根据您希望输出的样式来调整它。

例如,如果您想显示 2023年02月09日,那么您的格式字符串应该是"2006年01月02日"。如果您想显示 02/09/2023,格式字符串则是"01/02/2006"。这里的数字 20060102150405 等,分别代表了Go语言中时间格式的年、月、日、时、分、秒等元素,您可以根据需要自由组合这些元素,来定义最终的显示格式。

获取文章的时间戳数据

在格式化时间戳之前,我们首先需要从文章数据中获取原始的时间戳。这可以通过 archiveDetail 标签(用于文章详情页)或 archiveList 标签(用于文章列表页)来实现。

  • 在文章详情页中获取时间戳: 当您在文章详情模板(如{模型table}/detail.html)中时,可以直接通过 archive 对象访问当前文章的 CreatedTimeUpdatedTime 字段。

    <p>发布时间:{{stampToDate(archive.CreatedTime, "2006-01-02 15:04")}}</p>
    <p>更新时间:{{stampToDate(archive.UpdatedTime, "2006年01月02日 下午03时04分")}}</p>
    
  • 在文章列表页中获取时间戳: 在文章列表模板(如{模型table}/list.html)中,您通常会使用 archiveList 标签循环遍历多篇文章。在循环内部,每篇文章的数据会赋值给一个变量(例如 item),然后您可以从中提取时间戳。

    {% archiveList archives with type="page" limit="10" %}
        {% for item in archives %}
            <div>
                <h3><a href="{{item.Link}}">{{item.Title}}</a></h3>
                <p>发布于:{{stampToDate(item.CreatedTime, "2006-01-02")}}</p>
                <p>最近更新:{{stampToDate(item.UpdatedTime, "01/02 15:04")}}</p>
            </div>
        {% endfor %}
    {% endarchiveList %}
    

常用的时间格式化示例

为了更好地说明 stampToDate 的灵活性,这里列举一些常见的格式化需求及其对应的格式字符串:

  • 仅显示日期(年-月-日) 例如:2023-02-09 格式字符串:"2006-01-02"

  • 显示完整日期和时间 例如:2023-02-09 15:04:05 格式字符串:"2006-01-02 15:04:05"

  • 中文日期格式 例如:2023年02月09日 格式字符串:"2006年01月02日"

  • 短日期格式(月/日) 例如:02/09 格式字符串:"01/02"

  • 带星期几的格式 例如:周四, 2023年02月09日 格式字符串:"Mon, 2006年01月02日" (注意这里的Mon代表星期几,会自动翻译)

  • 显示时间(小时:分钟) 例如:15:04 格式字符串:"15:04"

您可以根据网站的整体设计和用户习惯,自由选择和组合这些格式。

小结

通过 stampToDate 标签和Go语言灵活的日期时间格式化参考,AnQiCMS让在模板中精确控制文章发布和更新时间的显示变得非常简单。无论是需要简洁的日期,还是详细到秒级的时间,您都可以通过调整格式字符串轻松实现,确保网站内容时效性的准确传达。


常见问题(FAQ)

  1. 问:为什么AnQiCMS的时间格式化字符串看起来很奇怪,不是常见的Y-m-d 答:这是因为AnQiCMS基于Go语言开发。Go语言在格式化时间时,不使用占位符,而是使用一个固定的参考时间2006-01-02 15:04:05。您只需根据这个参考时间,将其对应部分替换为您希望的输出样式即可。例如,想要显示年份,就在格式字符串中写2006,想要显示月份,就写01

  2. 问:如果我的文章没有更新过,UpdatedTime会显示什么? 答:如果文章从未被更新,UpdatedTime字段通常会和CreatedTime字段的值相同。在实际显示中,您可以选择性地只显示CreatedTime,或者在UpdatedTimeCreatedTime不同时才显示更新时间,以避免不必要的重复信息。

  3. 问:能否在格式化时间戳时,增加一些本地化的星期几名称,比如“星期一”、“Monday”? 答:可以的。Go语言的时间格式化参考字符串中,Mon代表星期几的简写(例如“周一”),Monday代表星期几的全称(例如“星期一”)。系统会根据当前网站的语言设置,自动进行本地化显示。例如,在中文站点使用"Mon, 2006年01月02日",可能会显示为周一, 2023年02月09日

相关文章

AnQiCMS是否提供便捷的标签来显示网站Logo和网站名称,并支持多站点调用?

在管理和运营网站的过程中,网站的品牌形象——Logo和网站名称——无疑是最核心的标识。它们不仅代表着网站的身份,也直接影响着用户对品牌的认知。对于像AnQiCMS这样致力于提供高效内容管理解决方案的系统来说,如何便捷地显示这些关键信息,并支持多站点环境下的灵活调用,是衡量其易用性和强大功能的重要标准。 AnQiCMS在这方面的设计理念,正是围绕着“便捷”和“灵活”展开的

2025-11-09

如何在AnQiCMS的评论列表中正确显示用户评论及其审核状态?

在AnQiCMS中管理和展示用户评论,特别是它们的审核状态,是内容运营中一个非常实用的功能。它不仅能帮助我们维护社区秩序,还能灵活控制网站内容的呈现,确保发布内容的质量和合规性。接下来,我们就来详细了解如何在您的网站评论列表中正确显示用户评论及其审核状态。 ### 核心功能:评论列表的调用 要在网站页面上显示用户评论,我们需要借助AnQiCMS强大的模板标签系统。其中

2025-11-09

AnQiCMS如何确保通过`safe`过滤器输出的HTML内容在前端安全且正确解析显示?

在网站运营中,我们经常需要展示用户输入或由富文本编辑器生成的HTML内容。如何确保这些动态内容既能正确显示,又能避免潜在的安全风险,是每个内容管理系统都必须面对的挑战。AnQiCMS作为一款注重安全的Go语言CMS,在这个方面有着一套成熟的机制,尤其是它提供的`safe`过滤器,在保障前端内容安全与正确解析显示上扮演着关键角色。 ### 默认的安全考量:为什么要自动转义? 首先

2025-11-09

如何为AnQiCMS的单页面设置独立的显示布局和元素,如“关于我们”页面?

在AnQiCMS中,为“关于我们”这类单页面设置独立的显示布局和元素,能够让网站内容呈现更具特色和专业性。AnQiCMS凭借其灵活的模板引擎和模块化设计,让这一过程变得直观且高效。 ### 为什么需要为单页面定制专属布局? 在使用AnQiCMS构建网站时,我们经常会遇到这样的需求:某些特定页面,比如“关于我们”、“联系我们”或者一些专题落地页

2025-11-09

AnQiCMS如何动态生成和显示面包屑导航,并控制是否包含当前页面标题?

在构建用户友好的网站时,面包屑导航扮演着不可或缺的角色。它不仅能直观地展示用户在网站中的当前位置,避免迷失,还能优化网站结构,对搜索引擎优化(SEO)大有裨益。对于安企CMS(AnQiCMS)的用户而言,利用其强大的模板标签系统,动态生成并灵活控制面包屑导航是提升网站体验的关键。 安企CMS深知这一点,因此内置了强大且灵活的面包屑导航功能,您无需复杂的编程知识,就能在网站中轻松实现这一功能

2025-11-09

如何配置AnQiCMS,使其在移动设备上正确显示为独立的移动端站点内容?

在AnQiCMS中,为了给移动设备用户提供更优质的访问体验,我们可以将网站配置为在移动端显示独立的站点内容。这种PC端与移动端独立运营的模式,不仅有助于针对不同设备进行精细化设计和优化,还能在特定场景下提升移动端的SEO表现。 AnQiCMS为我们提供了多种网站显示模式,其中包括了“PC+手机独立站点”模式,这正是实现移动端独立内容展示的基础。接下来,我们将逐步探讨如何配置AnQiCMS

2025-11-09

AnQiCMS在显示文章内容时,如何将Markdown格式的内容自动渲染为HTML?

在安企CMS中,将Markdown格式的内容自动渲染为HTML,是系统提供的一项核心功能,旨在帮助内容创作者以简洁高效的方式发布富文本内容。这一过程并非神秘的黑箱操作,而是通过明确的设置和灵活的模板标签控制来实现的。 ### 核心机制:Markdown内容的自动渲染 安企CMS之所以能够将您输入的Markdown内容转化为精美的网页布局,其核心在于后台的智能处理和前端模板的解析能力

2025-11-09

如何利用AnQiCMS的`archiveFilters`标签实现多维度内容筛选条件的动态显示?

在内容日益丰富的网站上,如何帮助访客快速找到他们感兴趣的信息,是提升用户体验和网站效率的关键。传统的固定分类导航往往难以满足用户多维度、个性化的筛选需求。这时候,AnQiCMS提供的`archiveFilters`标签便能大显身手,它能帮助我们动态展示多维度的内容筛选条件,让您的网站内容管理与呈现更加灵活和智能。 设想一下,如果您的网站上发布了大量的房源信息、商品列表或是行业报告

2025-11-09