Wordpress

Traducir el “No soy un robot” del reCAPTCHA de google

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 );
}

Comments

One response to “Traducir el “No soy un robot” del reCAPTCHA de google”

  1. Homegoma Avatar
    Homegoma

    Buena aportación

Leave a Reply

Your email address will not be published. Required fields are marked *


The reCAPTCHA verification period has expired. Please reload the page.

This site uses Akismet to reduce spam. Learn how your comment data is processed.