页如何调用时间?

99ANYc3cd6
预计阅读时长 11 分钟
位置: 首页 DEDE建站 正文

最常用的时间调用标签

在DedeCMS的内容页模板(通常是 article_article.htm)中,最核心、最常用的调用文章发布时间的标签是:

dede内容页调用时间
(图片来源网络,侵删)
[field:pubdate function='strftime("%Y-%m-%d %H:%M:%S",@me)'/]

代码解析:

  • [field:pubdate ... ]:这是调用文章发布时间字段的标签。pubdate 是DedeCMS数据库中存储发布时间的字段名。
  • function='...':这是一个函数修饰符,用来对获取到的原始时间进行格式化处理。
  • strftime():这是一个PHP函数,用于将时间戳格式化为你想要的字符串。
  • "%Y-%m-%d %H:%M:%S":这是格式化字符串,定义了时间的输出格式。
    • %Y:四位数的年份(2025)
    • %m:两位数的月份(01-12)
    • %d:两位数的日期(01-31)
    • %H:24小时制的小时(00-23)
    • %M:分钟(00-59)
    • %S:秒(00-59)

常见的时间格式化示例

你可以根据需要修改 strftime() 中的格式化字符串来得到不同样式的时间。

只显示年月日

这是最常见的需求,2025-10-27

[field:pubdate function='strftime("%Y-%m-%d",@me)'/]

或者使用更简洁的写法(DedeCMS内置了 MyDate 函数):

dede内容页调用时间
(图片来源网络,侵删)
[field:pubdate function='MyDate("Y-m-d",@me)'/]

注意: MyDate 是DedeCMS自定义的函数,功能与 strftime 类似,但更简单。Y-m-dMyDate 函数特有的格式化参数。

只显示月日

10-27

[field:pubdate function='strftime("%m-%d",@me)'/]

[field:pubdate function='MyDate("m-d",@me)'/]

显示中文年月日

2025年10月27日

dede内容页调用时间
(图片来源网络,侵删)
[field:pubdate function='strftime("%Y年%m月%d日",@me)'/]

[field:pubdate function='MyDate("Y年m月d日",@me)'/]

显示带星期的时间

2025年10月27日 星期五

[field:pubdate function='strftime("%Y年%m月%d日 %A",@me)'/]

[field:pubdate function='MyDate("Y年m月d日",@me) 星期几'/]

注意: MyDate 函数对星期的支持可能不如 strftime%A(英文全名)或 %w(数字)或 %a(英文缩写)灵活,直接使用 strftime 更稳妥。


调用文章更新时间

除了发布时间,你可能还需要调用文章的最后一次更新时间,这个时间字段在DedeCMS中通常是 uptime

调用方法和发布时间完全一样,只需要把 pubdate 换成 uptime 即可。

调用更新时间(标准格式)

[field:uptime function='strftime("%Y-%m-%d %H:%M:%S",@me)'/]

调用更新时间(仅年月日)

[field:uptime function='MyDate("Y-m-d",@me)'/]

实用技巧:如果文章有更新时间则显示,否则显示发布时间

这个功能非常有用,可以通过DedeCMS的 if 标签来实现。

{dede:field.name='uptime' runphp='yes'}
    if(@me == '') {
        @me = "发布时间:".strftime("%Y-%m-%d", @me);
    } else {
        @me = "更新时间:".strftime("%Y-%m-%d", @me);
    }
{/dede:field.name}

代码解析:

  • {dede:field.name='uptime' runphp='yes'}:获取 uptime 字段的值,并开启PHP执行。
  • if(@me == ''):判断获取到的更新时间是否为空。
  • @me = "...":如果为空,就给 @me 变量(即最终输出的内容)赋值为“发布时间:...”。
  • else { ... }:如果不为空,就赋值为“更新时间:...”。
  • @me 的值会被输出到页面上。

总结与最佳实践

需求 推荐标签代码 说明
标准发布时间 [field:pubdate function='MyDate("Y-m-d H:i:s",@me)'/] 最常用,清晰易读。
简短发布日期 [field:pubdate function='MyDate("Y-m-d",@me)'/] 适合列表页或空间有限的地方。
中文发布日期 [field:pubdate function='MyDate("Y年m月d日",@me)'/] 符合中文阅读习惯。
文章更新时间 [field:uptime function='MyDate("Y-m-d",@me)'/] 调用文章最后修改时间。
智能时间判断 使用 runphp='yes'if 判断 优雅地处理无更新时间的情况。

小贴士: 在DedeCMS中,MyDate 函数通常是比 strftime 更优先的选择,因为它更简洁,且是DedeCMS内核专门为模板设计的,但在一些复杂的格式化场景下,strftime 的功能更强大。

你可以直接将这些代码复制到你的内容页模板文件(/templets/default/article_article.htm)中的相应位置,例如文章标题下方、作者信息旁边等。

-- 展开阅读全文 --
头像
dede数据库还原步骤是什么?
« 上一篇 今天
dede幼儿园网站模板哪里下载?
下一篇 » 今天

相关文章

取消
微信二维码
支付宝二维码

目录[+]