解决wordpress发布时间显示为8小时前的方法

这个问题非常奇葩,没遇到过的可能这辈子都不会遇到,遇上的折腾来折腾去也不一定能搞定,索性发个教程出来,希望能帮助到后面遇到这个问题的人。

我们通过关键字搜索,大致可以搜索到这几种解决办法:

方法一:

在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;
}
}

替换成如下代码即可:

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;
}
}

这样修改好后,在博客前台文章发表时间就是其实的本地化时间了。

方法二:

按照以下步骤操作
1、php.ini
先保证你的搭建的PHP环境php.ini时间为东八区:date.timezone=Asia/Shanghai
2.WordPress后台设置UTC+8
仪表盘 – 设置 -常规,时区设置为UTC+8。
3、主题中设置时间
在你的主题文件functions.php中的第一个<?php字符换行插入date_default_timezone_set(PRC);

如果能通过上面的办法能解决,那是最好的,恰好我通过上面的办法依然无法解决。

这个问题很多人发过教程,并且大部分都说明了是因为插件导致的时间错乱,所以如果知道是什么插件导致的,直接禁用插件即可解决,但是由于我这问题莫名其妙就出现,所以献上最终解决办法:

把下面的代码添加到当前主题的function文件中即可:

if(!function_exists('cwp_set_current_timezone')){
function cwp_set_current_timezone($timezone){
if( false===stripos( $timezone,':' ) ){
$timezone_name = $timezone;
}else{
$timezone = strtolower($timezone);
$timezone = str_replace(array('utc','UTC'), '', $timezone) ;
$timezone = preg_replace('/[^0-9]/', '', $timezone) * 36;
$timezone_name = timezone_name_from_abbr(null, $timezone, true);
if( false===$timezone_name ){
$timezone_name = timezone_name_from_abbr(null, -10* 3600, false);
}
}
if(function_exists('date_default_timezone_set')){
date_default_timezone_set($timezone_name);
return $timezone_name;
}
return false;
}
}

if(function_exists('date_default_timezone_set')){
$timezone = '+0:00';
cwp_set_current_timezone( $timezone );
}
» 本文链接:解决wordpress发布时间显示为8小时前的方法
» 转载请注明来源:刺客博客
» 如果文章失效或者安装失败,请留言进行反馈
评论 ( 4)
  1. avatar
    沙发
    陈沩亮博客 2018-10-03 17:22

    你好!你的网站内容不错,对用户有帮助。

    我的网站经常更新原创文章,Alexa排名20万左右,希望和你交换友情链接。

    URL:https://www.chenweiliang.com/
    链接文字:陈沩亮博客

    如能交换友情链接,请回复本邮件 ^_^

    • avatar
      回复
      刺猬 2018-10-04 01:14
      @陈沩亮博客 已加上。欢迎经常回访
      • avatar
        回复
        陈沩亮博客 2018-10-11 19:38
        @刺猬 由于我没收到邮件回复,所以不知道你是否同意加上友情链接。 刚才查看之前在贵站的留言,没想到你同意交换友情链接了。 我已加上贵站友情链接,也请你加上我的,谢谢! 合作愉快!