Support » Plugin: Forms: 3rd-Party Integration » Error sending to Pardot

  • Resolved lfitz13

    (@lfitz13)


    Hi, I have several different forms on my site and they all work with your plug-in except one is not syncing to pardot, but it does submit in the back end. This is the debug error response, what does it mean exactly? Thanks!

    **RAW RESPONSE**
    Array
    (
    [safe_message] => error object
    [object] => WP_Error Object
    (
    [errors] => Array
    (
    [http_request_failed] => Array
    (
    [0] => Too many redirects
    )

    )

    [error_data] => Array
    (
    )

    )

    )

Viewing 2 replies - 1 through 2 (of 2 total)
  • Plugin Author zaus

    (@zaus)

    Sorry, there’s like a million requests for help with this issue on the forum, and as far as I can tell pardot just doesn’t like how WP sends remote requests (or vice versa). I haven’t come across a definitive answer, but the closest was to hook my plugin to use the ‘request_bypass’ and use something other than wp_remote_post (like curl) which gives you more control over sending.

    pulsewebdesigns

    (@pulsewebdesigns)

    Like many others, I’m running into this same issue and I’m trying to figure out what the hook needs to look like. I’ve found a few threads that I think should yield an answer, but I’m not a good enough programmer to figure out how to author a working solution.

    Can you please advise how to combine these two code snippets into a working solution? I think a lot of people would benefit from it. Thanks in advance!

    function my_3rdparty_get_override($post_args, $service, $form) {
        $post_args['response_bypass'] = wp_remote_get($service['url'], $post_args);
        return $post_args;
    }
    $curl_opts = array(
    CURLOPT_URL => $service['url'].'/?'.http_build_query($post_args['body']),
    CURLOPT_CONNECTTIMEOUT => 5,
    CURLOPT_TIMEOUT => $post_args['timeout'],
    CURLOPT_POST => 1,
    //CURLOPT_PROTOCOLS => CURLPROTO_HTTPS,
    CURLOPT_SSL_VERIFYHOST => 2,
    CURLOPT_RETURNTRANSFER => 1
    );
    
    $ch = curl_init();
    curl_setopt_array($ch, $curl_opts);
    $response = curl_exec($ch);
    curl_close($ch);
Viewing 2 replies - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.