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

WordPress插件日期翻译失效及date_i18n使用错误求助

WordPress日期本地化问题解决方法

错误原因

  1. 原生PHP的DateTime::format()不支持WordPress的本地化翻译逻辑,所以月份名(如September)无法自动转换为西班牙语的小写形式(septiembre)。
  2. 你之前的错误用法:将date_i18n()返回的已格式化完成的日期字符串当作格式参数传给format(),导致PHP解析格式字符时出现混乱,输出乱码。

正确解决方案

方案1:使用date_i18n()处理时间戳

先将DateTime对象转换为Unix时间戳,再传入date_i18n()进行本地化格式化:

// 从DateTime对象获取Unix时间戳
$timestamp = $start->getTimestamp();
// 执行本地化日期格式化
$date = date_i18n('j \d\e F \d\e Y', $timestamp);

方案2:使用wp_date()(推荐,WordPress 5.3及以上版本)

wp_date()是WordPress官方封装的本地化日期函数,支持直接传入DateTime对象,用法更简洁:

// 直接传入DateTime对象和目标格式
$date = wp_date('j \d\e F \d\e Y', $start);

效果说明

以上两种方法都会读取WordPress后台设置的站点语言(如西班牙语),自动将F对应的月份名翻译为本地化形式,最终输出符合要求的28 de septiembre de 2022格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 09:15:36