使用帝国CMS开发网站时,经常需要调用文章的发布时间并按特定格式显示。比如在列表页、内容页或首页中展示“2024-05-20”或“2024年5月20日”这样的时间格式。下面介绍几种常用的调用和格式化文章发布时间的方法。

1. 在模板中调用文章发布时间

在列表模板、封面模板或内容模板中,可以通过以下标签调用文章的发布时间:

[!---empirenews.page--]=date('Y-m-d',$r[newstime])?>[/!---empirenews.page--]

说明:

$r[newstime] 是文章发布的时间戳字段。

date('Y-m-d', $r[newstime]) 将时间戳格式化为“年-月-日”形式。

常见格式示例:

Y-m-d H:i:s → 2024-05-20 14:30:00

Y年m月d日 → 2024年05月20日

m/d/Y → 05/20/2024

M j, Y → May 20, 2024

2. 在内容页直接调用当前文章时间

在内容模板中,可以直接使用内置变量:

[!---empirenews.page--]=$navinfor[newstime]?date('Y-m-d',$navinfor[newstime]):'';[/!---empirenews.page--]

或者用更简洁的方式:

[!---empirenews.page--]=date('Y-m-d',$navinfor[newstime]);[/!---empirenews.page--]

注意:$navinfor 只在内容页有效,需确保开启“使用程序代码”功能。

3. 使用系统函数 FormatDate

帝国CMS提供了 FormatDate 函数,可用于更灵活地格式化时间:

[!---empirenews.page--]=FormatDate($r[newstime],3);[/!---empirenews.page--]

其中第二个参数决定格式:

1:返回 Y-m-d

2:返回 Y-m-d H:i:s

3:返回 m-d

4:返回 Y年m月d日

5:返回 Y/m/d

4. 在灵动标签中调用并格式化时间

在首页或其他非列表页使用灵动标签(e:loop)时,写法如下:

[!---empirenews.page--] [e:loop={栏目ID,显示条数,操作类型,只显示有标题图片}]

=$bqr['title']?> =date('Y-m-d',$bqr[newstime])?>

[/e:loop] [/!---empirenews.page--]

这里 $bqr[newstime] 是每条数据的时间戳,可用 date() 进行格式化。