dede调用发布日期的代码是什么?

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

使用 GetDateTimeMK() 函数(最常用)

这个函数专门用于获取日期,并会根据后台的全局设置来决定显示的格式。

dede调用发布日期
(图片来源网络,侵删)

基本用法

在文章列表页(如 arclist.htm)或文章内容页(如 article_article.htm)的模板文件中,使用以下标签:

[field:pubdate function='GetDateTimeMK(@me)'/]
  • field:pubdate:这是调用文章发布时间字段。
  • function='GetDateTimeMK(@me)':这是一个函数处理。
    • @me:代表 field:pubdate 当前的值,也就是一个Unix时间戳。
    • GetDateTimeMK():是DedeCMS内置的函数,它会将Unix时间戳转换为你想要的日期格式。

自定义日期格式

GetDateTimeMK() 函数本身可以接受一个参数来指定日期格式,这个格式与PHP的 date() 函数格式相同。

常用格式:

  • 格式:Y-m-d H:i:s

    dede调用发布日期
    (图片来源网络,侵删)
    • 显示效果:2025-10-27 15:30:00
    • 标签写法:
      [field:pubdate function='GetDateTimeMK("Y-m-d H:i:s", @me)'/]
  • 格式:Y-m-d

    • 显示效果:2025-10-27
    • 标签写法:
      [field:pubdate function='GetDateTimeMK("Y-m-d", @me)'/]
  • 格式:Y年m月d日

    • 显示效果:2025年10月27日
    • 标签写法:
      [field:pubdate function='GetDateTimeMK("Y年m月d日", @me)'/]
  • 格式:m-d

    • 显示效果:10-27
    • 标签写法:
      [field:pubdate function='GetDateTimeMK("m-d", @me)'/]

实际应用示例

假设你的文章列表模板文件是 /templets/default/list_article.htm,你想让每篇文章显示“年-月-日”格式的发布日期。

dede调用发布日期
(图片来源网络,侵删)

在循环列表的代码块中(通常由 {dede:list}{dedarclist} 标签控制),找到合适的位置,插入如下代码:

<ul>
    {dede:list pagesize='10'}
    <li>
        <a href="[field:arcurl/]">[field:title/]</a>
        <span class="date">发布日期:[field:pubdate function='GetDateTimeMK("Y-m-d", @me)'/]</span>
    </li>
    {/dede:list}
</ul>

使用 MyDate() 函数

MyDate() 是一个更通用的日期格式化函数,用法非常灵活。

基本用法

MyDate() 函数的格式是 MyDate('格式', 'Unix时间戳')

[field:pubdate function='MyDate("Y-m-d", @me)'/]
  • "Y-m-d":你指定的日期格式。
  • @mefield:pubdate 的值,即Unix时间戳。

你会发现,在大多数情况下,MyDate()GetDateTimeMK() 的写法几乎一样,效果也相同。

GetDateTimeMK() 的区别

  • 默认行为GetDateTimeMK() 如果不传格式参数,会调用DedeCMS后台的全局日期格式设置(在“系统” -> “系统基本参数” -> “时间格式”中定义),而 MyDate() 必须指定一个格式。
  • 灵活性MyDate() 更像一个纯粹的PHP date() 封装,非常灵活,你可以用它来获取“N分钟前”、“1小时前”这样的相对时间,但这通常需要配合其他JS或PHP函数,在DedeCMS中不常用。

对于绝大多数调用日期的需求,直接使用 GetDateTimeMK() 是最简单、最标准、最不容易出错的方式,如果你需要完全自定义格式,并且明确知道你在做什么,MyDate() 也可以胜任。


页调用文章发布日期

页(如 article_article.htm),调用方式与列表页完全相同,因为同样使用 field:pubdate 标签。 页模板中,你可以这样显示发布日期:

<h1>[field:title/]</h1>
<div class="info">
    发布时间:[field:pubdate function='GetDateTimeMK("Y-m-d H:i:s", @me)'/] &nbsp;&nbsp;
    作者:[field:writer/] &nbsp;&nbsp;
    来源:[field:source/] &nbsp;&nbsp;
    点击:[field:click/]
</div>

总结与最佳实践

函数 推荐用法 优点 缺点
GetDateTimeMK() 首选,推荐使用 语义清晰,与DedeCMS系统结合紧密,如果不传参会遵循后台全局设置。 功能相对单一,仅用于日期时间格式化。
MyDate() 作为备选或需要特定格式时 功能强大,非常灵活,像一个独立的日期工具。 必须指定格式,不如GetDateTimeMK()“官方”。

最终建议:

在你的日常DedeCMS模板开发中,请统一使用以下方式调用日期:

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

"Y-m-d" 替换成你当前项目需要的任何日期格式即可,这样既保证了代码的规范性,又能轻松应对各种日期显示需求。

-- 展开阅读全文 --
头像
dede翻页调用如何实现?
« 上一篇 04-19
织梦创建数据库,步骤详解是什么?
下一篇 » 04-19

相关文章

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

目录[+]