source

워드프레스 플러그인에서 컬을 사용하는 방법은 무엇입니까?

nicesource 2023. 2. 14. 21:30
반응형

워드프레스 플러그인에서 컬을 사용하는 방법은 무엇입니까?

워드프레스 플러그인을 만들고 있는데 cURL 호출이 제대로 작동하지 않습니다.

예를 들어 www.domain.com/wp-admin/admin.php?page=orders 페이지가 있다고 합시다.

주문 페이지에는 버튼이 클릭되었는지, 클릭되었는지 여부를 확인하는 기능이 있으며, 같은 페이지(www.domain.com/wp-admin/admin.php?page=orders&dosomething=true)에서 다른 기능을 시작하려면 cURL 호출을 수행해야 합니다.이렇게 하는 이유는 이 cURL 콜을 비동기화할 수 있도록 하기 위해서입니다.

에러는 발생하지 않지만, 회답도 없습니다.URL을 example.com 또는 example.com으로 변경하면 응답이 나타납니다.인증 문제 같은 것이 있습니까?

내 코드는 이렇게 생겼는데..테스트를 쉽게 하기 위해 gets, echos를 사용하고 비동기 기능을 사용하지 않습니다.

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); 
 } 

WordPress 플러그인에 CURL을 사용하면 안 됩니다.

대신 wp_ 함수를 사용하여 HTTP 요청을 발행합니다.

function wp_plugin_event_handler () {
    $url = 'http://your-end-point';  
    $foo = 'bar';
    $post_data = array(
         'email' => urlencode($foo));

    $result = wp_remote_post( $url, array( 'body' => $post_data ) );
}

add_action("wp_plugin_event", "wp_plugin_event_handler");

과거에 WordPress 플러그인 이벤트 핸들러가 CURL과 연동되는 문제가 있었습니다.대신 WP_ 함수를 사용하면 예상대로 작동합니다.

물론 블로그의 admin 섹션은 비밀번호로 보호됩니다.인증 데이터를 전달해야 합니다.자세한 것은, http 인증을 참조해 주세요.특히 여기를 봐 주세요.

http://www.php.net/manual/en/function.curl-setopt.php

CURLOPT_USERPWD 옵션을 설정하거나 CURLOPT_를 설정할 수도 있습니다.HTTPAUTH.

언급URL : https://stackoverflow.com/questions/4800688/how-do-you-use-curl-within-wordpress-plugins

반응형