Wordpress

Traducir el «No soy un robot» del reCAPTCHA de google

Wordpress

Traducir el «No soy un robot» del reCAPTHA de Google

reCAPTCHA. Traducirlo a otros idiomas.En una página multi-idioma de WordPress deseamos traducir todas las páginas de nuestro sitio. El origen de estas traducciones pueden ser código estático (plantillas, plugins, etc.) o dinámicas (básicamente los contenidos de entradas, páginas, etc., de nuestra base de datos).

No obstante hay partes de código que no siempre nos es fácil encontrar su origen. No queda más remedio que observar soluciones en la red y, si tenemos suerte, solucionarlo y compartir las soluciones. Es lo que voy a realizar a continuación.

Aunque WMPL soluciona la mayoría de los problemas tuve un problema en el caso de un texto localizado en el plugin de Contact Form 7, en concreto con su sistema inteligente de reCAPTCHA. Funciona de forma fenomenal pero el problema lo tenía al intentar traducir el texto «No soy un robot»

Solución

En el caso que observamos de nuestro reCAPTHA disponemos de varios idiomas. Como vemos gallego, inglés, catalán, euskera y portugués. Tenemos que añadir el siguiente código en el fichero functions.php del template o, mejor, si no queremos ser invasivos, utilizar el magnífico plugin Code Snippets para este fin (esta opción ya lo mecionamos en Cargar estilos propios en WordPress).

remove_action( 'wpcf7_enqueue_scripts', 'wpcf7_recaptcha_enqueue_scripts' );
add_action( 'wpcf7_enqueue_scripts', 'wpcf7_recaptcha_enqueue_scripts_custom' );
function wpcf7_recaptcha_enqueue_scripts_custom() {
$hl = 'es';
//You can find the list of supported language codes here: https://developers.google.com/recaptcha/docs/language
if (ICL_LANGUAGE_CODE == 'gl') $hl = 'gl';
if (ICL_LANGUAGE_CODE == 'en') $hl = 'en';
if (ICL_LANGUAGE_CODE == 'ca') $hl = 'ca';
if (ICL_LANGUAGE_CODE == 'eu') $hl = 'eu';
if (ICL_LANGUAGE_CODE == 'pt-pt') $hl = 'pt';
$url = 'https://www.google.com/recaptcha/api.js';
$url = add_query_arg( array(
'hl' => $hl,
'onload' => 'recaptchaCallback',
'render' => 'explicit' ), $url );
wp_register_script( 'google-recaptcha', $url, array(), '2.0', true );
}

Un comentario en “Traducir el «No soy un robot» del reCAPTCHA de google

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.