我将wordpress语言设置为罗马尼亚语,当我在常规设置中将日期格式选择为j F(日期和月份)时,我得到了英语月份,例如6月5日,而不是罗马尼亚,而是5个Iunie。
我使用过这个return date(get_option('date_format'));
或这个return date(get_option('j F'));
,但是月份仍然是英语。
我已经尝试了其他类似问题的一些建议,但对于我自己的一生,我似乎无法使其发挥作用。有什么建议可以尝试吗?
答案 0 :(得分:0)
date()
功能不是特定于WordPress的-它是PHP核心的一部分,默认情况下,所有缩写词或完整日期部分均使用英语。请参见php.net doc page for details。格式化日期与翻译/本地化日期大不相同。
在WordPress之外,或者如果您只想手动执行操作,则可以将setlocale()
与strftime()
或IntlDateFormatter
结合使用。例如,对于罗马尼亚语:
setlocale(LC_ALL, 'ro_RO','Romanian');
echo strftime("%e %B");
// "5 iunie"
但是,上述操作可能很复杂,因此一种更简单的方法是使用WordPress的内置函数将日期转换为不同的语言环境:date_i18n()
。它使用您在Wordpress设置中设置的语言环境,这使事情变得非常容易。如果您只想用您的语言和格式设置来回显日期,则仅此一项应有效:
echo date_i18n(get_option('date_format'));