Wordpress时间戳标签中的时区错误

2022-01-30 15:12:09 标签 phpwordpressdatedatetimetimezone

我使用下面的代码在wordpress function。php中创建了一个名为_datetime的自定义标签。

function add_custom_mail_tag( $custom_mail_tags, $form_id ) {
   $custom_mail_tags[] = "_datetime";
   return $custom_mail_tags;
}
add_filter( "wpcf7_special_mail_tags", function( $output, $name, $html ) {
   if ( $name === "_datetime" ) {
      $submission = WPCF7_Submission::get_instance();
      if ( $timestamp = $submission->get_meta( 'timestamp' ) ) {
         $date = date_i18n( get_option( 'date_format' ), $timestamp );
         $time = date_i18n( get_option( 'time_format' ), $timestamp );
         $date_time = $date . " " . $time;
         return $date_time;
      }
   }
   return $output;
}, 10, 3 );

然而,时区是错误的,即使我已经设置了一个时区在wordpress设置>通用时区,它仍然发送UTC时区。

这个插件的另一个预定义标签工作正常,发送时间格式正确,但这个函数只是发送UTC。

我如何修改它以发送由wordpress设置的正确时区?

谢谢。

# # #的解决方案:

我用wp_date替换了date_i18n,解决了这个问题。

还要注意,date_i18n() is now depreca现在是赞成还是反对wp_date() as also reported in the articl如下文所述。

https://make。wordpress。org/core/2019/09/23/date-time-improvements-wp-5-3/

阅读全文

▼ 版权说明

相关文章也很精彩
推荐内容
更多标签
相关热门
全站排行
随便看看

错说 cuoshuo.com —— 程序员的报错记录

部分内容根据CC版权协议转载;网站内容仅供参考,生产环境使用务必查阅官方文档

辽ICP备19011660号-5

×

扫码关注公众号:职场神器
发送: 1
获取永久解锁本站全部文章的验证码