Traducir tema o plugin de WordPress

Home » Blog » Traducir tema o plugin de WordPress

Para traducir un tema o un plugin de WordPress se debe preparar el código fuente para que sea sencillo traducirlo a diferentes idiomas. A la hora de crear un tema o un plugin no es indispensable pero si importante para poder tener un público mayor.

Imagina que tenemos un plugin interesante, si no esta preparado para su traducción, sin conocimientos técnicos, estaremos desestimando una parte del mundo que podría estar interesante, y que con un poco más de trabajo podrían traducirlo ellos mismos.

Traducir cadenas

WordPress cuenta con numerosas funciones para la traducción de cadenas:

  • __(‘texto’,’mi_plugin_o_tema’): Si, son 2 guiones bajos. Simplemente traduce, para visualizarse es necesario indicarselo mediante echo o print. El primer parámetro es el texto y el segundo es el nombre del plugin o tema, que debe ser único respecto al resto de temas y plugins, para evitar que se pisen las traducciones.
$variable=__('Esta es una prueba.','imacreste-tema');
echo $variable;
  • _e(‘texto’,’mi_plugin_o_tema’): El funcionamiento es el mismo, solo que con esta función el texto se imprime por pantalla, la e es el echo de PHP.
_e('Esta es una prueba.','imacreste-tema');

Traducir textos con variables

Si en el texto queremos incluir variables debemos usar la función de PHP: printf.

$nombre="imacreste";
$edad=21;
$nombre2="Bilbao";
printf(__('Me llamo %1$s, tengo %2$d años y soy de %3$s.','imacreste-tema'), $nombre, $edad, $nombre2);

Aunque es una función clásica de PHP su funcionamiento es muy sencillo:

  • %1$s: Estamos llamando a la primera variable ($nombre) que es un string (s), si ponemos un 3, mostraría Bilbao como nombre.
  • %2$d: Estamos llamando a la segunda variable que es un dígito (d).

Con esto podemos traducir una cadena a cualquier idioma ya que el orden de las variables dentro del texto son independientes.

Textos: Singular y plural

Normalmente cuando una variable es singular o plural hace variar el texto, para evitar tener que añadir programación extra contamos con otra función:

$contador=1; 
$nombre='imacreste';
printf(_n('%1$s: Tienes %2$d mensaje','%1$s: Tienes %2$d mensajeS',$contador,'imacreste-tema'),$nombre,$contador);

Si probamos este código con el 1, se mostrara el primer mensaje, si ponemos un numero mayor se vera el segundo mensaje.  El tercer parámetro es la variable que se mira si es plural o singular.

Como realizar las traducciones finales

Una vez tengamos nuestro plugin o tema bien preparado es necesario cargar nuestras traducciones en WordPress para que sea reconocido por el sistema y para que funcione correctamente el sistema de traducciones clásico.

function traducciones_plugin() {
 $dir= basename(dirname(__FILE__));
 load_plugin_textdomain( 'imacreste-tema', false, $dir.'/lang');
}
add_action('init', 'traducciones_plugin');

Con este código estamos indicando que los ficheros de traducciones para el tema/plugin => imacreste-tema se encuentran en la carpeta lang dentro de la dirección del plugin o tema.

Los ficheros de traducción, los que contienen los textos traducidos, deben tener el siguiente formato: imacreste-tema-ar_AR.po y  imacreste-tema-ar_AR.mo para la versión de castellano de Argentina, y imacreste-tema-es_ES.po y  imacreste-tema-es_ES.mo para la versión de castellano de España.

Para la creación de estos ficheros recomiendo usar la herramienta gratuita: poedit. Una vez descargado lo abrimos y tenemos 2 opciones:

  1. Coger un archivo po y crear uno nuevo, subiendo los textos. En este caso, abrimos el .po con un editor y cambiamos el mismo por lo que necesita nuestra plantilla.
  2. Crear uno nuevo de cero. Esta opción es un extra de la aplicación y tiene un coste de unos 25 €. Lo recomiendo.

Como siempre es necesario estar actualizado, en este caso consulta en el codex esta página.



Foto de Iñigo Mezo Alvarez

IÑIGO MEZO ALVAREZ (IMAcreste)


Comentarios

Deja una respuesta

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

Las reseñas son opiniones que las personas dejan en la página local de Google. Si son positivas, estas reseñas ayudarán a mejorar la confianza y credibilidad de una marca.

Participa en nuestro sorteo enviando un email con tu nombre y el asunto «Sorteo AUDITORÍA SEO». Se realizara un sorteo cada mes.

Evaluación EXCELENTE
A base de 8 reseñas
Iñigo me ha asesorado con un problema que tenía para acceder a mi web y me ha salvado la vida, porque creía que había perdido todo el trabajo que llevaba haciendo años. Muchísimas gracias. Es gratificante encontarte con alguien que controla y te ayuda en los problemas que te pueden surgir.
Santutxu Zaharra
Santutxu Zaharra
11/06/2024
Gran profesional y muy competente, le contratamos para cambiar la web y mejorar el posicionamiento y gracias a su asesoramiento ha mejorado.
jorge martinez
jorge martinez
16/05/2024
Contactamos con Iñigo para el diseño web de nuestra tienda online y estamos encantados. Su asesoramiento, seguimiento y trato han sido excepcionales. Un verdadero crack. Recomendado al 100%. No dudes en ponerte en contacto con el.
erlantz rique
erlantz rique
19/02/2024
Un acierto quien elija a Iñigo. Autentico profesional, se preocupó en todo momento que entendiera el funcionamiento de la web. Me explicó todo las veces necesarias hasta entenderlo. Se preocupó y acertó en que la web tuviera lo que le pedí y lo hizo con creces. Muy contento con el servicio prestado. Una vez realizado el trabajo, cualquier duda que tengo me sigue ayudando. Lo recomiendo sin temor a equivocarme.
Jose Marlasca
Jose Marlasca
06/02/2024
Compromiso, implicación e innovación en los proyectos. Atento a las necesidades e incansable en la búsqueda de soluciones. Muy buena opción.
Jabier Fuertes Udaondo
Jabier Fuertes Udaondo
07/01/2024
Si buscas a alguien que además de hacer un diseño web moderno, responsivo y adaptado a tu sector, te explique por qué plantea el diseño web de esa manera y que te explique y ayude en posicionar tu web lo mejor posible en base a los objetivos fijados, ese es Iñigo Mezo y os lo recomiendo al 100%
Asier Hermoso
Asier Hermoso
03/01/2024
Genial trabajar con él! Además de ser muy buen profesional, experto y responsable, a destacar tanto su implicación en cada proyecto, así como su trato siempre cercano y su paciencia infinita ;) Un crack!!
itxaso zubia
itxaso zubia
15/12/2023
El plugin gratuito para integrar productos de Prestashop en Wordpress muy sencillo de utilizar y muy bien documentado, os felicito.
Fernando Cózar
Fernando Cózar
02/11/2023