Traducir cualquier cadena con Polylang

 

Polylang permite traducir casi cualquier cadena de WordPress, de tu plantilla y de algunos plugins. Tras instalar Polylang, en Idiomas / Traducciones encontraremos todo aquello que podemos traducir desde su panel de administración.

Digo que se puede traducir casi cualquier cadena porque, en la práctica, algunas plantillas y plugins o bien no tienen compatibilidad total con Polylang o bien fallan a la hora de registrarlas todas por motivos que en algunos casos se escapan a mis entendederas.

Hoy vamos a ver cómo traducir y añadir esas cadenas que se resisten registrándolas como nuevas con la ayuda de Ad Inserter Pro en la plantilla GeneratePress en su versión Premium.

La única diferencia de estos pasos si no usas Ad Inserter, es que tendrás que añadir a mano la llamada a esas nuevas cadenas de traducciones en los archivos correspondientes de WordPress. Puedes acudir a la documentación de Polylang, pero si no sabes muy bien cómo interpretar esta información a efectos prácticos intentaré explicarlo de la manera más sencilla posible.

Añadir una nueva cadena

Una vez que hemos comprobado que aquellas cadenas que queremos traducir no aparecen en el panel de traducciones de Polylang toca registrarlas.

El ejemplo que usaré es uno muy habitual que suele resistirse, se trata del texto "Leave a comment" que vamos a traducir como "¿Algo que decir?"

Este es el texto que se muestra sobre la caja de comentarios y en algunas plantillas, como es el caso de GeneratePress, no aparece en el archivo comments.php, que es donde por lo general suele encontrarse.

Primeros pasos

El primer paso para registrar una nueva cadena es añadirla en el archivo functions.php (siempre es aconsejable hacerlo sobre el functions.php de un tema hijo).

pll_register_string('¿Algo que decir?', 'Leave a comment');;

Si vas a registrar varias cadenas puedes comentarlas para recordar cómo se añadieron. Las últimas que añadí tienes estas notas:

Traducir cualquier cadena con Polylang 1

Ahora, al volver a la administración de traducciones encontraremos que el texto ya aparece disponible para traducir bajo un nuevo grupo llamado "Polylang".

Añadimos nuestras traducciones y guardamos, esto sólo registra las traducciones en la administración de Polylang.

El último paso es añadir la llamada en el lugar correcto en nuestra plantilla. En un mundo perfecto abriríamos el archivo comments.php de nuestra plantilla y añadiríamos lo siguiente sustituyendo la línea donde aparece "Leave a comment". (El tamaño y grosor ya va al gusto y necesidades de cada cual).

<h5 class="post-title"> <strong><?php echo pll__('Leave a comment'); ?></strong></h5>

Si todo ha ido bien, enhorabuena. Aquí termina el tutorial para ti. Ahora el mensaje se mostrará en cada idioma que hayas añadido.

No funcionó, una alternativa

Si no funcionó o no encuentras ese texto en el archivo comments.php de tu plantilla y no sabes desde donde se llama, no está todo perdido. Aún puedes hacer una trampa para conseguir añadirlo. Aquí es donde entra en juego Ad Inserter, que aunque es un plugin para colocar anuncios, lo mismo sirve para un roto que para un descosido.

Lo primero que haremos será esconder el mensaje "Leave a Comment" con este CSS. (Válido para GeneratePress, para otras plantillas deberás consultar su documentación).

#reply-title {
    display: none;
}

Después crearemos un nuevo bloque de AdInserter tal que así añadiendo el código:

1- Marcamos que se muestre en las entradas.

2- En Insertar elegimos "antes, después o dentro" del elemento HTML, según nos interese.

3- Pinchamos en la casilla que se señala y se abrirá una pantalla donde podremos seleccionar el lugar donde queremos que se muestre. Abrimos cualquier post y marcamos el contenedor, el color de la selección pasará de azul a rojo al pinchar y finalmente apretamos "Usar" (recuerda quitar el ID del post si aparece al principio del código o sólo se mostrará en ese post).

Para este ejemplo marqué que apareciera "después" de este mensaje para que se muestre justo encima de la caja de comentarios, pero también se puede marcar "antes" y seleccionar la caja de comentarios por si la primera opción te fallara.

Guardamos el bloque de Ad Inserter y verificamos que todo haya ido bien.

Un par de plugins de pago para registrar cadenas

Si no te consideras capaz de meterle mano al asunto por ninguno de los métodos descritos y prefieres usar una solución de pago hay al menos dos plugins que prometen facilitar la tarea de registrar y añadir nuevas cadenas.

Uno de ellos cuesta tan solo 5 euros y se llama Polylang register all strings y el otro es Strings Registration for Polylang, bastante más caro, que se vende por 25 libras esterlinas.

No he probado ninguno de estos dos plugins, por lo que desconozco si hacen bien lo que prometen por lo que no te tomes las referencias como una recomendación. Antes de pagar por ellos consulta a su desarrollador para intentar asegurarte de que funcionan con todos tus plugins y tu plantilla.

Post programado

Post programado

Esto es un post automático veraniego programado. Los comentarios pueden permanecer en moderación.


Suscríbete por email para recibir las viñetas y los artículos completos y sin publicidad

Artículos relacionados



Repositorio de documentales sobre dibujantes de cómic y humor gráfico.

Tontolares. Los titulares más gilipollas de la prensa. Envía los tuyos

Tu WordPress puede volar

Servicio de optimización

Suscripción por e-mail

Recibe gratis los artículos completos en tu correo sin publicidad en el momento que se publiquen. Se envía el contenido íntegro del feed sin anuncios a través de un servicio externo.