Mediante un código provisto por Etpay en functions.php, se habilitó un pop-up que aparece solo en portada:
/* ET PAY Snippet de Débito Directo */
add_action( 'wp_footer', 'snippet_dd', 9999 );
function snippet_dd() {
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api-prod01.etpayment.com/dd/start-session',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"validation_type": "merchant_credentials",
"merchant_code": "cl_sochradi",
"merchant_api_token": "5No4RWt6Ooz6c3Q9hBqrgcMnwyuIlqfx7iksy6vybWBTG7OeJT4KZXr1cmRZbOGn"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
$array = json_decode($response, true);
global $wp;
if ( is_front_page() or is_home() ) {
echo '<script src="https://dd-snippet.etpay.com/js/index.js" payment_url=https://dd-01.etpay.com/session/'.$array['token'].' id="payment_urlIDETPAY" ></script>';
}
}
La clienta finalmente decidió desactivarla, salvo que la pongamos en el área privada del socio. Pero eso amerita pruebas y puede ser confuso, así que no hicimos caso.
El código quedó comentado en functions.php