我一直在我的本地机器上开发一个 WordPress 网站并在我自己的服务器上托管。一切运行完美。
自从移至客户端服务器后,编辑器中的某些功能已停止工作。具体来说,那些涉及 ajax 请求的。我研究了一些事情,它die(0)
在admin-ajax.php
以下代码中退出:
// Require an action parameter
if ( empty( $_REQUEST['action'] ) )
die( '0' );
进一步阅读看到在in$_REQUEST
期间被重置如下:wp_magic_quotes()
wp-includes/load.php
$_REQUEST = array_merge( $_GET, $_POST );
服务器上的 PHP 设置可能是什么问题,在期间可能会$_REQUEST
保持空白?wp_magic_quotes()
ajax-admin.php
如果我编辑ajax-admin.php
添加$_REQUEST
重置:
$_REQUEST = array_merge( $_GET, $_POST );
// Require an action parameter
if ( empty( $_REQUEST['action'] ) )
die( '0' );
...然后编辑器中的所有 ajax 都可以正常工作。
但我宁愿不编辑核心文件,所以想知道如何更改服务器设置以使用标准文件?
设置详情:
Wordpress 3.4.2
PHP 5.4.5 使用 Apache 2.0 Handler
Unix 服务器
PHP 设置:
request_order:无值
variables_order:GPCS
任何帮助表示赞赏。