WordPress校正时区,解决8小时时差的方法总结

大陆使用WordPress时,通常会有八个小时时差,校正时区主要涉及三个方面。

1.后台设置时区

2.date() vs wp_date()

所有用函数date()地方替换为WordPress自带的wp_date(),系统已经帮我们根据校正时区,非常便捷。

3.strtotime vs wp_strtotime

目前wp_strtotime函数需要自定义拓展,所有用函数strtotime()地方替换为wp_strtotime(),参考:


/**
 * 校正时区
 */
function wp_strtotime($str) {
     try {
        $datetime = new DateTime($str, wp_timezone());
     } catch (Exception $e)  {
        return false;
   }
   return (int) $datetime->format('U');
} 

切记:返回值用整型(int),与原生strtotime基本保持一致。网上许多类似方法都没有转换类型,导致返回string类型,很容易出现意想不到的问题。

(版权归cpury.com所有,转载请注明出处。)