You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress问题:get_the_date无法将月份名称转换为其他语言?

解决WordPress日期显示英文的问题

看起来你已经调整了站点语言设置,但日期里的月份缩写还是没翻译对吧?先说说你之前代码里的问题:你把_e('d M')传给get_the_date是不对的——_e()函数是直接输出翻译内容的,它不会返回值给get_the_date用,而且get_the_date的参数是日期格式符,不是已经翻译好的字符串。

下面给你几个靠谱的解决办法:

方法1:先确认语言包是否正确生效

首先排查基础设置:

  • 进入后台「设置」→「常规」,检查「站点语言」是否已经设为你需要的语言
  • 如果语言包没自动安装,点击「站点语言」下拉框里的「安装语言包」按钮,等待安装完成后保存设置

有时候语言包没装好,就算改了设置也不会生效,这一步很关键。

方法2:用date_i18n替代get_the_date(更可靠的国际化方案)

get_the_date在某些主题或场景下可能不会自动触发本地化翻译,这时候可以用WordPress专门的国际化日期函数date_i18n,它会自动根据站点语言翻译月份、星期这些内容:

<?php echo esc_html(date_i18n('d M', get_post_time('U', false))); ?>

简单解释下参数:

  • get_post_time('U', false):获取当前文章的时间戳(U代表时间戳格式,false表示用站点本地时间而非UTC时间)
  • date_i18n:会自动识别站点语言,把格式符里的M(月份缩写)翻译成对应语言的内容

方法3:自定义日期格式(按需调整)

如果你想要更灵活的显示效果,比如显示完整月份名,可以直接修改date_i18n里的格式符,举个例子:

  • 要显示「05 五月」(中文)或对应语言的完整月份:date_i18n('d F', get_post_time('U', false))
  • 格式符的规则和PHP原生date函数一致,但date_i18n会自动处理本地化翻译

最后再提醒一句:别用_e()或者__()去包裹日期格式符,这些函数是用来翻译静态文本的,日期的本地化翻译交给date_i18n就足够啦。

内容的提问来源于stack exchange,提问作者Tolga

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 04:10:50