Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

I'm trying to integrate a 3rd party API with WordPress. I fear this is above my head. I was this code but I'm not exactly sure how to make is work in WordPress. Is it possible?

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://xxx');
curl_setopt($ch, CURLOPT_POST, 7);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array(
    'auth_token' => 'xxxxxx',
    'list_id' => 'xxxxx,
    'name' => 'Office',
    'campaign_id' => 'xxxxx',
)));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

curl_close($ch);
share|improve this question

1 Answer 1

Something like this works:

$url = 'https://xxx';

$body = array(
    'auth_token' => 'xxxxxx',
    'list_id' => 'xxxxx,
    'name' => 'Office',
    'campaign_id' => 'xxxxx',
);

$response = wp_remote_post($url, array(
    'body'=>$body, 
    'sslverify' => false // this is needed if your server doesn't have the latest CA certificate lists
    ) );

if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) {
    // error handling goes here
}

$results = wp_remote_retrieve_body( $response );
// $results has the actual results in it
share|improve this answer
    
Hi Otto- Thank you so much for the response. So I can put that in my theme functions file? –  Jeces Oct 11 '12 at 16:15
    
Yes, you can. Be sure to wrap it as a function, though, and only call it when you need it. Otherwise it'll be executed on every page load. –  EAMann Oct 11 '12 at 16:43

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.