Bir wordpress eklentisi oluşturuyorum ve düzgün çalışması için bir CURL çağrısı alıyorum sorun yaşıyorum.Wordpress eklentileri içinde curl'i nasıl kullanıyorsunuz?
ben bir sayfa var Sağlar ki www.domain.com/wp-admin/admin.php?page=orders emir sayfa içinde
Bir düğme tıklandığında ve eğer olduğunu görmek için görünen bir fonksiyonu var Bu yüzden farklı bir işlevi başlatmak için aynı sayfaya (www.domain.com/wp-admin/admin.php?page=orders & dosomething = true) bir CURL çağrısı yapması gerekir. Bu şekilde yapmamın nedeni bu cURL çağrısının async olması olabilir.
Hata alıyorum, ancak yanıt alamıyorum. URL'mi google.com veya example.com'a değiştirirsem bir yanıt alırım. Bir kimlik doğrulama sorunu veya bu doğaya ait bir şey var mı?
Kodum böyle bir şeye benziyor .. Kullanıyorum, echos'u kullanıyorum ve sadece test kolaylığı için async yapmıyorum.
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 sunucunuza bir geri döngü arabirimi üzerinden yönlendirebilmeniz gerekir. Belki de web sunucusu sadece 'public' IP üzerinde dinlenecek ve 127.0.0.1 gibi bir geridönüş adresinde değil. Ev sahibine 'dahili' olarak yönlendirilip yönlendirilemeyeceğini görmek için bir komut dizisinde sistem ("ping www.domain.com") gibi aptalca bir şey denemenizi öneririm. – sarnold
Curl, sadece wordpress'in genel kısmına gidersem işe yarar .. aka www.domain.com. Ama eğer admin'e (wp-admin) ulaşmaya çalışırsam bir cevap vermez. – Jason
Eşzamansız bir süreç arıyorsanız, neden ajax kullanmıyorsunuz? cURL * * eşittir (örn. php komut dosyanız cURL bitene kadar engellenecektir). –