我正在創建一個wordpress插件,並且無法正常運行cURL調用。如何在wordpress插件中使用curl?
可以說我有一個頁面www.domain.com/wp-admin/admin.php?page=orders
在訂單頁面我有一個看起來,看看是否點擊一個按鈕是如果函數因此它需要對同一頁面執行cURL調用(www.domain.com/wp-admin/admin.php?page=orders & dosomething = true)以啓動不同的功能。我這樣做的原因是我可以讓這個cURL調用是異步的。
我沒有收到任何錯誤,但我也沒有收到任何回覆。如果我將我的網址更改爲google.com或example.com,我會收到回覆。是否存在認證問題或可能存在這種性質的問題?
我的代碼看起來像這樣..我使用gets,echo,而不是爲了簡化測試而做異步。
if(isset($_POST['somebutton']))
{
curlRequest("http://www.domain.com/wp-admin/admin.php?page=orders&dosomething=true");
}
if($_GET['dosomething'] == "true")
{
echo("do something");
exit;
}
function curlRequest($url) {
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
return($response);
}
您需要能夠通過回送接口路由到您的網絡服務器。 Web服務器可能已經配置爲僅偵聽「公共」IP,而不是在諸如127.0.0.1的環回地址上偵聽。我建議在腳本中嘗試一些愚蠢的東西,例如`system(「ping www.domain.com」)`,看看你是否可以在內部路由到主機。 – sarnold 2011-01-26 01:42:48
捲曲的作品,如果我只是去公共部分的wordpress ..又名www.domain.com。但是,如果我試圖去管理員(wp-admin),它不會給出迴應。 – Jason 2011-01-26 01:56:38