/
rdstation.php
42 lines (40 loc) · 2.08 KB
/
rdstation.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
/**
* RD Station - Integrações
* addLeadConversionToRdstationCrm()
* Envio de dados para a API de leads do RD Station
*
* Parâmetros:
* ($rdstation_token) - token da sua conta RD Station ( encontrado em https://www.rdstation.com.br/docs/api )
* ($identifier) - identificador da página ou evento ( por exemplo, 'pagina-contato' )
* ($data_array) - um Array com campos do formulário ( por exemplo, array('email' => 'teste@rdstation.com.br', 'nome' =>'Fulano') )
*/
function addLeadConversionToRdstationCrm( $rdstation_token, $identifier, $data_array ) {
$api_url = "http://www.rdstation.com.br/api/1.2/conversions";
try {
if (empty($data_array["token_rdstation"]) && !empty($rdstation_token)) { $data_array["token_rdstation"] = $rdstation_token; }
if (empty($data_array["identificador"]) && !empty($identifier)) { $data_array["identificador"] = $identifier; }
if (empty($data_array["c_utmz"])) { $data_array["c_utmz"] = $_COOKIE["__utmz"]; }
unset($data_array["password"], $data_array["password_confirmation"], $data_array["senha"],
$data_array["confirme_senha"], $data_array["captcha"], $data_array["_wpcf7"],
$data_array["_wpcf7_version"], $data_array["_wpcf7_unit_tag"], $data_array["_wpnonce"],
$data_array["_wpcf7_is_ajax_call"]);
if ( !empty($data_array["token_rdstation"]) && !( empty($data_array["email"]) && empty($data_array["email_lead"]) ) ) {
$data_query = http_build_query($data_array);
if (in_array ('curl', get_loaded_extensions())) {
$ch = curl_init($api_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_query);
// curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_exec($ch);
curl_close($ch);
} else {
$params = array('http' => array('method' => 'POST', 'content' => $data_query, 'ignore_errors' => true));
$ctx = stream_context_create($params);
$fp = @fopen($api_url, 'rb', false, $ctx);
}
}
} catch (Exception $e) { }
}
?>