在本地调试没有问题,但是传到服务器上就不行了,这是一个比较常见问题,原因是服务器为PHP5,存在bug。解决方案如下:

在目录wp-includes下找到gettext.php文件,用文本编辑器打开,找到其中这样一段代码:

// $MAGIC1 = (int)0×950412de; //bug in PHP 5
$MAGIC1 = (int)0×950412de;
// 如果服务器不支持,请替换为: $MAGIC1 = 2500072158;
// $MAGIC2 = (int)0xde120495; //bug
$MAGIC2 = (int)0xde120495;
// 如果服务器不支持,请替换为: $MAGIC2 = 3725722773;

按照提示把注释中的备选方案替换原来的变量定义,也就是

// $MAGIC1 = (int)0×950412de; //bug in PHP 5
$MAGIC1 = 2500072158;
// 如果服务器不支持,请替换为: $MAGIC1 = 2500072158;
// $MAGIC2 = (int)0xde120495; //bug
$MAGIC2 = 3725722773;
// 如果服务器不支持,请替换为: $MAGIC2 = 3725722773;