我们是否有遇到,在wordpress发布的文章和实际的系统时间,以及我们的北京时间是相差八小时的,这个到底是什么问题呢?今天正好有遇到问题就一起解决一下。

方法一:
1、检查服务器问题
我们如果使用的虚拟主机,一般商家都是校队好的。如果我们使用的是服务器,我们需要检查服务器的时间是不是和我们的当前时间一致,如果不一致,我们需要调整服务器的时间。
2、手工调节
我们到WP页面中添加一行代码直接手工校对。
以及我们在wp-config.php添加代码。
3、我们再检查网站后台
我们进入wordpress后台,设置(Settings)->时区设置(Timezone)改成上海(Shanghai),然后保存下修改。
方法二:
一、登录 WordPress 后台仪表盘 → 设置 → 常规 → 时区;
二、更改 UTC(协调世界时)时区偏移:
- 时间快的话时区改成: UTC-8
- 时间快的话时区改成: UTC+8
方法三:
1.修改代码
通过百度搜索找到了很多解决方法,但很多都不能用,或者已经失效了,经过验证,确定以下这个方法可行,可以通过替换wp-includes目录下的functions.php文件来解决。
function current_time( $type, $gmt = 0 ) {
switch ( $type ) {
case ‘MySQL’:
return ( $gmt ) ? gmdate( ‘Y-m-d H:i:s’ ) : gmdate( ‘Y-m-d H:i:s’, ( time() + ( get_option( ‘gmt_offset’ ) * 3600 ) ) );
break;
case ‘timestamp’:
return ( $gmt ) ? time() : time() + ( get_option( ‘gmt_offset’ ) * 3600 );
break;
}
}
打开wp-includes目录下的functions.php文件,找到以上代码,删除。
function current_time( $type, $gmt = 8 ) {
switch ( $type ) {
case ‘mysql’:
return ( $gmt ) ? gmdate( ‘Y-m-d H:i:s’ ) : gmdate( ‘Y-m-d H:i:s’, ( time() + ( get_option( ‘gmt_offset’ ) * 3600 ) ) );
break;
case ‘timestamp’:
return ( $gmt ) ? time() : time() + ( get_option( ‘gmt_offset’ ) * 3600 );
break;
}
}
然后替换成上面的代码,保存文件即可。
总结,通过上面的办法检查修改后是可以解决问题的。


















