2012-10-18 54 views
4

我一直在我的本地機器上開發一個WordPress網站,並託管在我自己的服務器上。一切都運行完美。

由於移動到客戶端服務器,編輯器中的某些功能已停止工作。具體來說,那些涉及Ajax請求。我已經調查的東西,它與die(0)退出在admin-ajax.php下面的代碼:在wp-includes/load.php

​​

進一步閱讀看到$_REQUEST是在wp_magic_quotes()復位如下:

$_REQUEST = array_merge($_GET, $_POST); 

什麼可能是這個問題在ajax-admin.php期間wp_magic_quotes()後可能使$_REQUEST服務器上的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處理器
Unix服務器

PHP設置:
request_order:沒有價值
的variables_order:GPCS

任何幫助表示讚賞。

感謝,
亞光

+2

這是一個好主意,[檢查文檔(http://php.net/ manual/en/ini.core.php#ini.request -order) – Adi

+0

暫時禁用所有插件和任何非默認主題。你還有問題嗎?你使用哪個Wordpress和哪個PHP版本? – hakre

+0

還在頂部放置一個'var_dump($ GLOBALS);'並以純文本形式查看它返回的內容。超級全球資源是否與您的本地系統一樣? – hakre

回答

0

驗證您的php.ini配置。有一個選項request_order必須設置爲「On」,Value的值爲Get和Post的「GP」。

它已關閉..但這裏是我在WAMP的本地ini上看起來像。

; request_order 
; Default Value: None 
; Development Value: "GP" 
; Production Value: "GP" 
+1

這並不意味着它會讓超全局數組REQUEST爲空。 – Baba