关于bluehost空间上wordpress后台变为英文的解决方案
作者:
有天晚上BH的服务器出现问题,过了一会恢复了过来,但wordpress后台变成了英文界面,但是以为是自己正在修改东西所造成的问题,后来查了些资料才找到问题的原因:
“在64位空间上安装wordpress会出不汉化的情况”,这是Wordpress的自身bug,问题的出在是Wordpress在64位的CPU下(linux)运行时,由于PHP-gettext解析.mo语言文件文件出现错误,以导致Wordpress在使用中文版本时失败,并不是传说中的bluehost禁用了.mo格式文件.官方尚未出新的升级版本,我们可以通过修改\wordpress\wp-includes\gettext.php这个文件代码来实现.
根据wordpress版本不同,有两套方案:
1/ wordpress 2.3.2版本
查找这段代码
if ($magic == ($MAGIC1 & 0xFFFFFFFF) || $magic == ($MAGIC3 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms
$this->BYTEORDER = 0;
} elseif ($magic == ($MAGIC2 & 0xFFFFFFFF)) {
$this->BYTEORDER = 1;
} else {
$this->error = 1; // not MO file
return false;
}
替换成
if ($magic == ($MAGIC1 & 0xFFFFFFFF) || ($magic == ($MAGIC3 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms
$this->BYTEORDER = 0;
} elseif ($magic == ($MAGIC2 & 0xFFFFFFFF)) {
$this->BYTEORDER = 1;
} else {
$this->BYTEORDER = 0;
//$this->error = 1; // not MO file
//return false;
}
2/ wordpress 2.3.2之前的版本
查找这段代码
if ($magic == ($MAGIC1 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms
$this->BYTEORDER = 0;
} elseif ($magic == ($MAGIC2 & 0xFFFFFFFF)) {
替换为
if ($magic == $MAGIC1) {
$this->BYTEORDER = 0;
} elseif ($magic == $MAGIC2) {
这样重新刷新后台页面,问题即可解决,如果还是看不到中文,抱歉,偶也没有其他办法啦.
根据wordpress版本不同,有两套方案:
1/ wordpress 2.3.2版本
查找这段代码
复制代码 代码如下:
if ($magic == ($MAGIC1 & 0xFFFFFFFF) || $magic == ($MAGIC3 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms
$this->BYTEORDER = 0;
} elseif ($magic == ($MAGIC2 & 0xFFFFFFFF)) {
$this->BYTEORDER = 1;
} else {
$this->error = 1; // not MO file
return false;
}
替换成
复制代码 代码如下:
if ($magic == ($MAGIC1 & 0xFFFFFFFF) || ($magic == ($MAGIC3 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms
$this->BYTEORDER = 0;
} elseif ($magic == ($MAGIC2 & 0xFFFFFFFF)) {
$this->BYTEORDER = 1;
} else {
$this->BYTEORDER = 0;
//$this->error = 1; // not MO file
//return false;
}
2/ wordpress 2.3.2之前的版本
查找这段代码
复制代码 代码如下:
if ($magic == ($MAGIC1 & 0xFFFFFFFF)) { // to make sure it works for 64-bit platforms
$this->BYTEORDER = 0;
} elseif ($magic == ($MAGIC2 & 0xFFFFFFFF)) {
替换为
复制代码 代码如下:
if ($magic == $MAGIC1) {
$this->BYTEORDER = 0;
} elseif ($magic == $MAGIC2) {
这样重新刷新后台页面,问题即可解决,如果还是看不到中文,抱歉,偶也没有其他办法啦.
您可能感兴趣的文章:
- WordPress中自定义后台管理界面配色方案的小技巧
- 给WordPress的编辑后台添加提示框的代码实例分享
- WordPress中给文章添加自定义字段及后台编辑功能区域
- 整理的一些实用WordPress后台MySQL操作命令
- 在WordPress中获取数据库字段内容和添加主题设置菜单
- WordPress开发中自定义菜单的相关PHP函数使用简介
- WordPress中注册菜单与调用菜单的方法详解
- 以JavaScript来实现WordPress中的二级导航菜单的方法
- WordPress导航菜单的滚动和淡入淡出效果的实现要点
- WordPress中制作导航菜单的PHP核心方法讲解
- wordpress主题支持自定义菜单及修改css样式实现方法
- 在WordPress的后台中添加顶级菜单和子菜单的函数详解