Me ha sucedido más de una vez que he utilizado un tema para WordPress y tengo que traducirlo porque su idioma base está en otro idioma. Los mejores temas, en general vienen con un texto genérico en inglés y un archivo de traducción que se puede utilizar para traducir el tema a otros idiomas. El tema es cómo crear o convertir un tema para que se pueda traducir. Esa pregunta me la hice hace un tiempo y hoy la quiero compartir.

1. Darles un formato especial a las cadenas que se deben poder traducir

En los archivos PHP que contienen el tema hay que darles un formato especial a las cadenas de texto:

En vez de escribir

Texto traducible

se debería usar un código como

<?php __(‘Texto traducible’, ‘mi_tema’); ?>

En donde “Texto traducible” es el texto que podríamos llegar a traducir y “mi_tema” es un código que permite unificar todos los textos a traducir.

Una vez que has identificado de esta manera todos los textos que pueden ser traducidos debes…

2. Generar el archivo de traducción

Existen diversas maneras de generar archivos de traducción. Comparto la que me parece mas simple: usar Poedit. Esta herramienta te permite no solo traducir archivos .po sino además generar nuevos desde archivos PHP y luego sus correspondientes .mo que son los archivos que contienen las traducciones que utilizará WordPress (PHP) para mostrar el contenido del tema traducido.

3. Indicar que el tema puede contener archivos de traducción

Por último, para que el tema pueda mostrar sus traducciones debemos indicar en el archivo functions.php del tema que el mismo es “traducible” con la siguiente línea de código PHP:

load_theme_textdomain(‘mi_tema’, get_template_directory() . ‘/languages’);

donde “mi_tema” es el texto que usamos como referencia en cada cadena a traducir y “languages” una carpeta adonde guardaremos los archivos .mo que contendrán nuestras traducciones. Por ejemplo, fr_FR.poes_ES.po.

¡Listo!

Puedes ver los siguientes enlaces (en inglés) de referencia si lo deseas:

http://www.solostream.com/blog/wordpress/translate-wordpress-theme/

http://codex.wordpress.org/Translating_WordPress

http://codex.wordpress.org/Function_Reference/load_theme_textdomain

Imagen: http://www.flickr.com/photos/ajabogado/3730930942/

Néstor Escobar

Departamento de Internet y SAT

CPM UAE

Website - Twitter - Facebook - More Posts