Actualizado el 1 de abril de 2020 por Irena Domingo
En este artículo te muestro cómo puedes traducir tu tema de WordPress (o plugin) mediante dos métodos: utilizando el programa Poedit o utilizando otro plugin (Codestyling Localization o Loco Translate). Para que un sitio web de WordPress esté totalmente traducido es necesario traducir tanto los contenidos (utilizando algún plugin como WPML, Polylang o Mutilingual Press) como las cadenas de texto existentes en archivos php.
(Artículo actualizado el 3 de enero de 2014)
TE VOY A HABLAR DE...
Introducción
Si quieres tener un sitio web de WordPress en dos o más idiomas has de tener en cuenta que no solo has de traducir los contenidos de tu web (artículos, páginas, formularios, etc), sino también lo que se denominan cadenas de texto:
A) Contenidos (artículos, páginas, sliders, formularios, etc)
El contenido de tu página web está almacenado en las tablas de la base de datos. No está almacenado en archivos. POr ello, traducir contenidos requiere una solución que lea los artículos de la base de datos para poder traducirlos desde la misma.
Si quieres saber cómo traducir tu contenido, existen diferentes plugins multilingües, tanto gratuitos (qTranslate o Polylang) como de pago (WPML).
B) Cadenas de texto (archivos PHP) en temas y plugins de WordPress
Tanto los temas como los plugins de WordPress contienen lo que se denominan cadenas de texto. Cuando en un archivo PHP ves algo como:
<php _e( ‘Text’, ‘a-text-domain’ ) ?>
Esto significa que existen textos que necesitarás traducir.
Las cadenas de texto pueden aparecer tanto en el panel de administración de WordPress como en la parte visible de tu página web.
Debes tener en cuenta que las cadenas de texto pueden aparecer tanto en el núcleo de WordPress como en los temas o plugins. Por ello, siempre será conveniente instalar WordPress inicialmente en el idioma original.
Algunos ejemplos de cadenas de textos e inglés que puedes ver en la parte visible de una web de WordPress (frontend):
- “Search” (botón de búsqueda)
- “Nothing found” (cuando un usuario busca algo en tu web pero no encuentra nada)
- “Read more” (Etiqueta de Leer Más de los artículos)
- “Leave a comment” (texto para animar a un usuario a dejar un comentario)
Ejemplos de cadenas de texto en inglés que puedes encontrar en el escritorio (backend) de WordPress:
- “Top primary menu” (texto en el área de widgets)
- “Ready to publish your first post?” (texto en el escritorio de WordPress)
- “Number of posts to show:” (Ídem)
- “Twenty Fourteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again” (texto del tema de WordPress Twenty Fourteen).
Herramientas como Poedit (que puedes utilizar de manera grauita) o plugins como Loco Translate, te permiten traducir las cadenas de texto de los archivos de WordPress. Tambień existen algunos plugins (como WPML) que además de permitirte traducir los contenidos también incluyen la opción de traducir las cadenas de texto.
En este artículo te muestro cómo puedes traducir cadenas de texto utilizando Poedit o algunos de los plugins que acabo de citar. Pero primero es imprescindible instalar WordPress en tu idioma nativo y entender qué son los archivos .POT, .PO y .MO.
1. Instalar WordPress en tu idioma
Actualmente, WordPress se encuentra traducido a más de 80 idiomas, incluso con distintas variantes de cada uno de ellos. Por ejemplo, la versión española está tanto en español de España (es_ES, código abreviado que utiliza) como en español de Perú (es_PE).
Por ello, es conveniente instalar inicialmente WordPress en el idioma original en el que van a crearse los contenidos. Con posterioridad podrás agregar y configurar nuevos idiomas para llevar a cabo la traducción de los temas y de los contenidos.
En este artículo te explico de manera más detallada Cómo instalar WordPress en tu idioma y cómo cambiarlo tras la instalación; desde WordPress 4.0 ha desaparecido la variable WPLANG y es posible modificar el idioma desde el propio panel de administración de WordPress en Ajustes > Generales > Idioma del sitio (abajo de todo).
2. Cadenas de texto: archivos .POT, .PO y .MO
WordPress está traducido utilizando el framework GNU gettext. Esta es también la manera habitual para cualquier tema o plugin. Sin embargo, los desarrolladores no siempre preparan sus temas para que sean multilingües, por ello es importante comprobar este aspecto antes de usar o comprar un tema o plugin.
Muchos temas de WordPress están preparados para ser multilingües. Así, deben contener los archivos correctos: .POT, .PO y .MO.
2.1. Portable Object Template (POT)
El archivo de traducción base de una tema o plugin es un archivo .POT. Básicamente es un listado de todos los textos utilizados en los archivos del tema:
Los desarrolladores utilizan herramientas (como gettext) que escanean los archivos PHP y generan un archivo .POT, el cual contiene una lista de todos los textos originales que necesitan ser traducidos.
Los desarrolladores ponen a tu disposición este archivo .POT, el cual se utiliza como punto de partida para crear nuevas traducciones a otros idiomas. WordPress no los utiliza.
El archivo .POT lo puedes encontrar en el directorio de idiomas (languages o lang) del tema o plugin:
Ejemplos:
-
-
- Responsive WordPress theme: wp-content/themes/responsive/languages/responsive.pot
- Contact Form 7 plugin: wp-content/plugins/contact-form-7/languages/contact-form-7.pot
-
En ocasiones el archivo .POT viene con archivos .PO y .MO (que se corresponden con traducciones iniciadas o ya finalizadas), y con una archivo README.TXT (que contiene instrucciones para los traductores):

2.2. Portable Object (PO) y Machine Object (MO)
El archivo .PO incluye los textos originales y la traducción de dichos textos en dos columnas separadas. Se trata de una traducción que alguien ha iniciado (el autor, un traductor profesional, un usuario del tema o del plugin, etc), y que quizás ya está finalizada. WordPress tampoco los utiliza.
Quizás tu tema o plugin ya está traducido. Por ejemplo, si ves un archivo llamado es_ES.po, tu tema ya está traducido al español (es) de España (ES). Puedes entrar en este enlace para encontrar el código de un idioma y el país.
Los archivos .MO incluyen exactamente los mismos contenidos que un archivo .PO. Únicamente difieren en su formato. Mientras que los archivos .PO pueden leerse fácilmente por las personas (con la ayuda de Poedit), los archivos .MO, en cambio, son archivos preparados para que sean leídos por parte de ordenadores. WordPress obtiene las traducciones de los archivos .MO.
El archivo .MO es automáticamente creado por Poedit cuando guardas un archivo .PO. Lo que tienes que hacer con con estos archivos es subirlos al servidor cada vez que creas o actualizas un archivo .PO.
Hay temas de WordPress que ya vienen traducidos (contienen los archivos .PO y .MO), como por ejemplo los que trae instalado por defecto WordPress (Twentyten, Twentyeleven, etc.). También muchos temas de pago, sobre todo los más populares y vendidos, suelen venir en varios idiomas.
Ello es debido a que al ser temas muy populares, el creador del mismo ha procurado que el tema esté disponible en otros idiomas como valor añadido al mismo o simplemente que algún usuario de dicho tema se ha tomado la molestia de traducirlo y compartir esta traducción; este es el motivo por el cual muchas traducciones de temas son de baja calidad puesto que están realizadas por traductores no profesionales, no obstante, siempre podremos nosotros mismos mejorar dicha traducción siguiendo los pasos que menciono en el siguiente apartado.
Por ejemplo, el framework Genesis, que es el que utilizo en esta página web, está traducido ya a muchos otros idiomas y no necesita ser traducido. Para ello existe un plugin que lo hace todo: Genesis Translations.
Muchos plugins son también multilingües y están traducidos a otros idiomas: Contact Form 7, WordPress SEO by Yoast, Jetpack, MailPoet Newsletters, etc. Es conveniente siempre comprobar las características del plugin para saber si está traducido o no a tu idioma.
3. Cómo traducir un tema o un plugin de WordPress
3.1. Poedit
Poedit es un software (disponible para Windows, Mac y Linux) que puedes utilizar para traducir tu tema o plugin. Está disponible de manera gratuita en poedit.net. La versión gratuita viene con una memoria de traducción que recuerda tus pasadas traducciones y las utiliza para hacerte sugerencias para textos similares.
Este programa también dispone de una versión Pro con funcionalidades y servicios adicionales como soporte personalizado para WordPress, posibilidad de contar las palabras, etc. Cuesta $19.99.
Aquí tienes los pasos para llevar a cabo la traducción:
1. Abre Poedit y selecciona Archivo > Nueva desde archivo POT / PO
2. Selecciona el archivo .POT (para hacer una nueva traducción) o el archivo .PO (si quieres modificar alguna traducción) del tema o plugin que desees traducir (puedes encontrar estos archivos en la carpeta wp-content/themes/tu-tema/language/ ).
3. Se te abrirá un desplegable preguntándote por el idioma de la traducción. Selecciona tu idioma:
4. Pulsa Aceptar y Poedit le pondrá nombre al archivo automáticamente. Si seleccionas Español (España): es_ES.po
5. Guarda este archivo en tu ordenador
6. Ahora ya puedes empezar a traducir tu tema o plugin. A tu derecha podrás ver los textos que necesitan ser traducidos y a tu izquierda podrás ver las traducciones finalizadas. Las casillas de debajo muestran el texto origen, tu traducción, así como cualquier nota para el traductor. El proceso de traducción es sencillo: selecciona una palabra o frase, introduce tu traducción y haz clic en «Validar».
IMPORTANTE:
-
-
-
-
- Has de respetar todos los caracteres especiales del texto original mientras realizas tu traducción (mira la captura de pantalla anterior)
- No es necesario traducir todas las cadenas de texto. Este es un tema relevante puesto que quizás no queramos emplear tiempo en traducir la parte administrativa de WordPress (no visible para el usuario) y prefiramos centrarnos en la parte visible de nuestra página web.
-
-
-
7. Cuando finalices, guarda tu archivo. Poedit creará automáticamente ambos archivos: .PO y .MO. Solo tendrás que subir ambos a la carpeta de idiomas de tu tema o plugin.
3.2. Loco Translate Plugin
Otra alternativa más reciente, muy bien valorada por sus usuarios, es la que ofrece el plugin Loco Translate:
¿Qué herramienta utilizas tu para traducir tu tema?, ¿Cuál ha sido tu experiencia?
¡Gracias por compartir!
Más artículos sobre WordPress Multilingüe.
Tema multilingüe *
* Traducido a 32 idiomas + Soporte RTL + Compatible con WPML
Enhorabuena por este blog tan bien trabajado. Quería hacer una pregunta por si alguien puede aclarármela.
Escribo desde https://traduccionexperta.c…
En este tutorial mencionas Poedit, editor gratuito con el que se pueden efectuar las traducciones de forma local. Nosotros hemos utilizado durante años este editor con muchos clientes. El caso es que últimamente hay clientes a los que les da problemas. ¿Qué otros programas similares existen que podamos emplear en lugar de Poedit?
Muchas gracias.
Gracias por el aporte. Me funcionó
Hola
¿Se pueden añadir nuevos textos a traducir en poeditor?
mi sitio es http://www.realestateesmera… y no me traduce muchas cosas
Hola:
PROBLEMA: Al poco de traducir todo el Thema con Loco Trasnlate apareció una versión nueva de mi Thema y al actualizarlo perdí todas las traducciones.
¿Qué hay que hacer para poder conservar las traducciones? ¿Descargarlas y volverlas a cargar despues? ¿Cómo se realiza ese proceso?
Gracias por su tiempo
Hay que utilizar un Child del tema, asi no pasa eso
He creado el tema hijo, y he probado a crear la carpeta languages donde pongo los po y mo de mis traducciones del tema, pero al actualizar el tema sigue pasando lo mismo, así que tengo que subir de nuevo los po y mo al tema principal. ¿Podrías indicarme cómo se hace para que lo guarde el tema hijo?
Ya solucionado añadiendo una función.
Como usar Loco Translate en plantilla hijo para no perder traducciones. Una vez todo traducido descargar y guardar el PO y MO. + En carpeta hijo crear carpeta lang + Luego mirar el TEXDOMAIN del tema padre y en plantilla functions.php del hijo añadir función con nombre del Text Domain y ruta de carpeta añadir este modelo de función.
function my_child_theme_setup() {
load_child_theme_textdomain( ‘nombredeltema(textdomain)’, get_stylesheet_directory() . ‘/lang(nombredelacarpeta)’ );
}
add_action( ‘after_setup_theme’, ‘my_child_theme_setup’ );
Hola que tal estas, tengo una pregunta a ver si es tan amable y me la puedes resolver,,tengo una traducción en archivo «.PO» realizada de un plugin para wordpress pero no se como subirlo para que este plugin pueda usarlo traducido a mi idioma,
Gran post sin duda utilizo loco traslate
gracias.
Hola Karmelo, has de subir los archivos po y mo a la carpeta de idiomas del plugin, tal y como está explicado en el artículo.
Sería bueno que especificaras la ruta exacta que normalmente tiene esa carpeta. Yo recientemente estoy teniendo un problema con traducciones que se pierden y eso se debe precisamente a que si sustituyes los documentos po y mo en la carpeta de idiomas del plugin, estos se pierden cuando se actualiza. Normalmente se debe usar la carpeta …/wp-content/languages/plugins para expresarlo de forma concreta, se supone que esta carpeta no se ve afectada por las actualizaciones. Me equivoco?
Hola como esta? tengo una consulta tengo instalado un THEME en el wordpress pero viene con algunas cosas en ingles y no se como traducirla.
Pueden ser textos del tema o de alguno de los plugins, para lo cual deberás utilizar Poedit, tal y como se explica en el artículo.
Buenas Tardes
Tengo un problema en mi blog, viendo el código php, hay algunas cadenas que tienen este formato _e(‘Sort By:’, ‘directory’); y si las traduce, pero otras que estan asi _e(‘Sort By:’, ‘dir’); y ya no me las traduce y cuando se actualizó la versión del WordPress todo lo que estaba con ‘dir’ se volvió a Ingles. copie los archivos.pot, .po y .mo que tenia de respaldos y volvió al español, pero cada vez que en el LocoTranslate sincronizo el .pot, todas las traducciones con ‘dir’, se pierden.
Por favor su ayuda o si alguien sabe como puedo arreglar eso
Probablemente no todas las cadenas del tema son traducibles. Debes contactar si puedes, con el desarrollador del tema para preguntarle.
Pero lo raro es que antes si le cogía las traducciones, y ahora es como que ya no le reconoce las traducciones. Lo que necesito saber es como funcionan las traducciones en wordpress.
Gracias
Hola gracias por el post:
tengo un plugin («Salon Booking» para reservas y citas previas) en inglés, y los archivos po y mo en español, pero no consigo que se traduzca el plugin:
1-WP está configurado en Español tanto en config como en Panel de control.
2-los po y mo están traducidos por profesional de pág oficial de WordPress (también los he revisado en PoEdit y están correctos).
3-los po y mo los «subo» por ftp a la carpeta languaje tanto del propio plugin como en content/languajes.
4-he desinstalado y reinstalado de nuevo el plugin (y actualizado WP).
Y no consigo que se traduzca el plugin.
Por favor ¿qué puedo estar haciendo mal?. ¿cómo puedo solucionarlo?
gracias.
Hola, una pregunta, si varios plugins que estoy ocupando, como «woocommerce» no tienen carpeta «Language» debo traducirlo buscando cada texto dentro de los archivos, o como puedo traducirlos más rápido?
Woocommerce ya está traducido a muchos idiomas: https://translate.wordpress.org/projects/wp-plugins/woocommerce
Excelente contenido !!!!! Cómo se utilizan las traducciones existentes en esta página para incorporarlas a nuestros plugins? Sólo veo opción de descargar un .csv
Nada, acabo de verlo … Gracias por el artículo de todas formas.
Acabo de comprr una plantilla y no se como hacerle para cambiarla a español agradeceria tu apoyo soy nuevo en wordprees
Ajustes > Generales > Idioma del sitio > Español. Si no se traduce al español es porque no viene traducida y has de hacerlo tú siguiendo el tutorial del artículo
Hola Irena, una pregunta:
He traducido el mi tema tal como has dicho a traves de Poedit, pero me ocurre una cosa.
Al cambiar el idioma en el panel de wordpress, se cambia en la web y todo perfecto, pero el wordpress se pone en ingles, porque ocurre?
Hay manera de solucionarlo?
Muchas gracias y has sido un buen descubrimiento!
Hola Xavi, al cambiar el idioma cambian tanto los textos de la parte visible como del panel de administarción. Existen algunos plugins que permiten cambiar solo el idioma del panel de administración. Los plugins de traducción también permiten hacerlo.
Que plugin me recomiendas?
https://es.wordpress.org/plugins/admin-language-per-user/
Me pasa que me tradujo algunas cosas y otras no, que puede ser que este faltando?
Hay textos en temas y plugins, quizás solo has traducido los textos del tema
Hola Irene, excelente el editor, pero tengo un problema subi el plugin y me sigue apareciendo en ingles, borre los archivos en ingles y deje solos los de español pero igual me sigue apareciendo en ingles. me estoy olvidando de modificar algo?
Depende de qué textos sean, quizás son los textos de algún plugin
Depende de qué textos sean, quizás son los textos de algún plugin
Hola Irena, gracias por este post, me fue de mucha utilidad.
Tengo el siguiente caso: Estoy diseñando un sitio en portugués, y necesito cambiar algunos textos del Theme.
He probado cambiando los ajustes de idioma de WordPress, y funciona de maravilla, ya que evidentemente el Theme trae dichos archivos .Po y .MO, pero con esa opción me cambia todo el idioma del escritorio y las configuraciones internas del Theme (no sé si me explico).
La pregunta es ¿Hay alguna forma de crear un nuevo idioma, en el cual pueda dejar todo el panel de configuración y demás en español y sólo cambiar algunos textos que me interesen (ejemplo: los campos del formulario)?
La otra solución que encontré es trabajar todo el contenido en español y al final cambiar el idioma de WP a portugués, pero quería saber si existía esa alternativa que te planteé más rriba.
Gracias!
Hola Matías, lo puedes hacer editando los archivos PO del tema o los archivos PO de plugins (en el caso de formularios de contacto como Contact Form 7, por ejemplo). Si alguna expresin no quieres que esté traducida, entonces edita el archivo PO correpondiente y copia la frase del idioma original en la traducción.
Hola.
Muchas gracias por el artículo, me ha sido de mucha ayuda.
No obstante, tengo un problema y es que cuando pongo los archivos correspondientes (.po y .mo que es el importante) no pasa nada con las traducciones, es decir, ya hice el ejercicio con Poedit y demás, pero siguen apareciendo los textos en inglés.
NOTA: Estoy haciendo el ejercicio para mi Theme porque WordPress lo tengo instalado en su versión en Español.
De antemano muchas gracias.
Saludos.
Has de subir los archivos po y mo en español a la carpeta de idiomas del tema y luego tener configurado WordPress en español (Ajustes > Generales > Idioma del sitio > Español). Con esto los textos del tema ya deberían aparecer en español.
Hola Irena, cordial saludo para ti, desde Venezuela.
Está buenísimo tu post y estuve revisando los comentarios para ver si alguien tenía el mismo caso que yo. De antemano te doy las gracias por la ayuda que me puedas brindar.
– Comencé a traducir una página web con WPML que está en inglés (su idioma original) y ahora se quiere tener la parte en español (como idioma secundario), sin embargo, me han surgido los siguientes problemas:
1- Las páginas y artículos los he podido traducir manualmente sin problema con el editor de WPML, pero poseo un plugin (Sabai Discuss) que es de preguntas y respuestas que no me permite traducir dichas entradas (ya que es muy parecido al panel de post) Cuando se van a editar dichas preguntas y sus respuestas para colocarlas, no me aparece el lápiz para realizar la traducción. He realizado miles de configuraciones y nada me ha ayudado, que puedo hacer en ese caso para traducir el texto que está allí?
2- En las configuraciones del WPML (específicamente Localización de temas y plugins >> Configuración regional de idioma) Me aparece el idioma inglés y abajo español, nombre del archivo local en_US.mo y es_ES.mo, luego en el espacio de «Configuración regional de idioma» me aparece vacío en inglés y en el de español «No se encontró el archivo». ¿Qué está sucediendo allí? Yo revisé en wp-content >> languages y solo me aparecen los siguientes archivos:
admin-es_VE.mo
admin-es_VE.po
admin-network-es_VE.mo
admin-network-es_VE.po
continents-cities-es_VE.mo
continents-cities-es_VE.po
es_VE.mo
es_VE.po
Pero no me aparece el de en_US (que es el principal idioma de la página y está configurado en «general» del panel de wordpress) y mucho menos el de español… En la carpeta de lenguaje del tema si me apareció el archivo .PO y .MO (el POT no está ni tampoco el README.txt) los baje, traduje y subí con el nombre de es_ES.mo y es_ES.po y nada que sirve…
Muchas gracias, espero puedas ayudarme con estos problemas que tengo desde hace días y no me han permitido lograr la traducción.
Feliz noche!
Hola Auri,
1. El plugin que mencionas sí que es compatible con WPML pero yo no lo he utilizado así que no puedo ayudarte. Ponte en contacto con el desarrollador del plugin para que te eche una mano.
2. El idioma inglés es el idioma por defecto en WordPress y por ello no te aparece.
Saludos
Hola excelente articulo, me parecio muy bueno el plugin loco translate es muy facil de usar y rapido, muchas gracias por el articulo.
Gracias a ti por comentar.
Hola Irena,
La verdad es que es admirable la paciencia que tienes con todos nosotros a la hora de enseñarnos cómo traducir un tema. En primer lugar, gracias por tu esfuerzo en nombre de todos. He leido tus apuntes detenidamente.
Yo soy desarrollador web, he usado unos 40 o 50 temas diferentes y muchísimos plugins. Tengo nociones de programación en PHP, aunque el PHP de WordPress me cuesta mucho más entenderlo.
Resulta que intento traducir algunos temas, y no consigo hacerlo correctamente. En la creación o actualización del archivo .po y .mo no tengo problemas. Lo hago a través de Poedit.
El problema surge cuando subo estos archivos a WordPress. No con todos los temas y plugins me funciona igual.
Y lo que me gustaría saber es cómo tengo que nombrar los archivos .po y .mo y dónde (en qué carpetas) tengo que ubicarlos. El asunto se complica cuando tengo que traducir el tema y algunos plugins del mismo tema. ¿Las traducciones de los plugins van en la misma carpeta?
Normalmente trabajo con los idiomas español o catalán. Entiendo que el nombre por defecto de los archivos debe ser es_ES.mo y es_ES.po y en el caso del català ca.mo y ca.po (antes probaba poniendo el nombre ca_ES pero no me funcionaba… con ca.mo y ca.po va bien).
Mis preguntas. (1ª pregunta) ¿Dónde se ubican las traducciones de la instalación de WordPress? (tengo entendido que en wp-content/languages). ¿Es así? ¿Cómo hay que llamar los archivos? (Veo que hay archivos llamados de forma diferente, por ejemplo: ca.mo/ca.po y admin-ca.mo/admin-ca.po o admin-network-ca.mo/admin-n…. ¿Cada uno de estos archivos pertenece a una parte de WordPress?
(2ª pregunta) ¿Dónde se ubican las traducciones del tema que uso y cómo hay que llamar los archivos?. Entiendo que en teoría debe ser en wp-content/themes/nombre-de-mi-tema/languages… a veces creo que me ha funcionado así, pero otras veces he tenido que ubicar el archivo de traducción en wp-content/languages/themes… y luego, ¿cómo llamo a este archivo?… veo que los temas que vienen por defecto con WordPress se llaman con el nombre del tema + guión + idioma, por ejemplo sería twentyfifteen-es_ES.mo/twen… (en el caso del español) y twentyfifteen-ca.mo/twentyf… (en el caso del català). Entiendo que si quiero usar mi tema, el nombre sería nombre-de-mi-tema-es_ES.po (por ejemplo).
El problema es que no siempre me ha funcionado bien así y me pasa lo mismo con los plugins que ubico en la carpeta wp-content/languages/plugins… por eso me gustaría saber exactamente (3ª pregunta) dónde se define en cada tema o plugin el nombre que deben llevar los archivos y la carpeta en la que deben ir incluidos… ya que entiendo que no siempre es igual.
Por supuesto, que en wp-config he definido el idioma y también en los ajustes >> general de la instalación de WordPress.
Por otro lado, antes usaba (en lugar del software poedit) el plugin codestyling localization del repositorio de WordPress, pero veo que lo han retirado (o quizá renombrado). (4ª pregunta) ¿Hay alguna alternativa?
Muchas gracias por atender mis cuestiones y disculpa por la extensión de mi comentario.
Un saludo desde Palma de Mallorca.
Hola Javier, te respondo por partes:
– La ubicación de los archivos de idiomas es la que indicas. Los códigos y los contenidos de cada uno de los archivos de idiomas de WordPress lo puedes ver aquí: https://translate.wordpress… (unos son textos visibles de la web, otros del panel de administración, otros sobre las ciudades y continentes que aparecen en el panel de administración en la parte de ajustes, etc)
– Los archivos de idiomas de los temas vienen en la carpeta «languages» o «lang» del tema. Han de denominarse con códigos del tipo es_ES (o solo «ca» para el catalán). Aunque a veces hay excepciones como los temas por defecto de WordPress que van en otra carpeta diferente y llevan su nombre en el archivo Po).
– Los archivos de idiomas de plugins también van en la carpeta de idiomas del plugin y, en general, también utilizan el mismo código, aunque en algunos casos puede que tengan otra denominación diferente (has de buscar un archivo README.txt en la carpeta «languages» con las instrucciones)
– Hay una alternativa mucho mejor denominada Loco Translate (https://es.wordpress.org/pl…
Saludos
Irena
Hola Irena,
Muchas gracias por la explicación.
Probaré todo lo que me dices y te contaré mis avances.
Javier
Hola, ayer actualicé a la última versión de WP y desde entonces tengo problemas con el archivo es_ES.mo. En su día hice una traducción adaptada a mi página que está en Catalán. Ahora he recuperado el archivo traducido y lo he subido a la carpeta de idiomas. Funciona bien, pero cada ciertas hora los archivos .po y .mo se reescriben solos y vuelven a estar originales. Eso hace que lo que tenía traducido en la web vuela a salir en español. Esto me había funcionado bien antes, pero con la nueva versión de WP no me va. Desde el FTP he intentado proteger los archivos contra escritura, pero al cabo de unas horas vuelven a cambiar solos. No sé se existe una forma de protegerlos.
Espero ayuda. Muchas gracias
Es muy raro Carlos. Yo también he actualizado a la nueva versión de WordPress y no he tenido este problema. Ten en cuenta que primero has de generar los archivos PO y MO en tu ordenador (para generar el archivo MO, primero has de guardar el archivo PO al menos 1 vez) y luego subir ambos archivos por FTP.
He bloqueado las actualizaciones automáticas y ahora aguanta el archivo, pero esta tarde he actualizado manualmente y han vuelto a reescribirse los archivos .mo y .po. He tenido que subirlos otra vez. Esto antes no me pasaba, se actualizaba solo y no se fastidiaban los archivos .mo y .po
Según me dice Wenke Adam en un correo electrónico, las nuevas versiones de WordPress se actualizan automáticamente (quieras o no). La solución pasa por hacer un tema hijo, que contenga los .po y .mo, así no se actualizarán.
Yo en este blog utilizo Genesis y un tema hijo y no he tenido este problema.
Saludos
Hola Irena, simplemente para felicitarte por el excelente post.!
Gracias
Saludos
Tony
Muchas gracias Tony!!!
Estimada: Felicitaciones por tu artículo, muy claro.
Hay un asunto que no me queda claro: tengo mi sitio wp en idioma español. En el tema/plantilla que estoy usando hay unas poquitas cosas que aparecen en inglés, por ejemplo, en los widgets me aparece «Archive for enero 2015» y «Posts filed under Eventos». Esto de crear los archivos .po y .mo será que funciona un poco como los temas hijos, en que sólo se necesita incluir lo que se quiere cambiar, o será que hay que traducir todo el archivo de inglés a español?
Se agradece aclaración.
Hola, muchas gracias. Pues no es obligatorio traducir todos los textos de lo archivos PO, puesto que hay muchos textos que corresponden al panel de administración del tema y no son textos visibles en el sitio web. Los textos que mencionas suelen estar en el archivo PO del tema, debes traducirlos también.
Saludos
Irena
Ya he encontrado la solución, se trataba de cambiar la codificación de los archivos a UTF-8, dándole a «guardar como» desde el bloc de notas. De todas formas, muchas gracias y un artículo muy interesante. Seguiré visitando tu página.
Perfecto. Muchas gracias por explicar cómo lo has solucionado.
Muy buen artículo, está muy bien explicado para la gente que está comenzando.
Tengo una pregunta, la plantilla de mi wordpress está en inglés, y aunque he estado cambiando el lenguaje código por código, no me detecta las tildes y las «ñ», por eso quería pasarlo a español, pero no sé si es esto lo que debo hacer.
Gracias.
Excelente post! Me sirvió mucho.
Me alegro 🙂 Gracias por comentar
Buen post, muchas gracias 😉
Gracias a ti por comentar 😉
hola!!!!
Primeramente muchas gràcias por este tutorial me aclaraste muchas cosas.
Solo tengo una duda sobre donde guardar el archivo .po y .mo. Ya que a mi me enseñaron que se tienen que poner en el archivo_wordpress/languages y no en el archivo_plantilla/languages. O se puede de las dos formas? Perdona pero me lie un poco con eso :P.
Gràcias
Los temas que trae por defecto WordPress (Twenty Fifteen, Twenty Fourteen, etc) van en la carpeta wp-content/languages. El resto de temas van en su carpeta correspondiente: wp-content/themes/nombre-tema/language
Hola. Pero he leído que puede pasar que al actualizar un tema o plugin, estos archivos de traducción se podrían borrar. Por eso se recomienda que se guarden en la carpeta global de wp.
Qué opinas?
No lo sé. Eso sería lo ideal, pero la gran mayoría de temas y plugins llevan los archivos PO y MO en su carpeta, no en la global. Por ejemplo, los archivos PO y MO del plugin Akismet sí que van en la carpeta global y se actualizan desde el panel de administración de WordPress.
Hola, gracias por este artículo! Cada vez que mi theme se actualiza se borran las traducciones y tengo que hacer el trabajo de cero. Estoy usando el plugin Loco, ¿Qué podría hacer para evitar este problema? Muchas gracias y felicitaciones por tu trabajo que haces en este website!
Puedes enviarle la traducción (los archivos po y mo) al desarrollador del tema para que las incorpore al mismo.
Hola buenas.
Muchas gracias por esta guía. Estoy empezando con mi blog y me va a servir de mucho porque el tema que quiero usar está sólo en inglés.
Un pena que no haya un repositorio en Internet de archivos .po 😀
Saludos.
Me alegro que te sea de utilidad 🙂
Saludos
Hola , muy bueno tu explicacion, te felicito, tengo una duda, espero me puedas ayudar, instale mi WPML sobre un theme que esta hecho solo en ngles, cuando requiro que me haga el translade a frances me envia un mensaje de error «file not found» mi pregunta es lo tengo que hacer todo manual?
gracias
Hola Eddy,
Si el tema está solo en inglés, entonces deberás hacer tu la traducción al francés mediante archivos po y mo, siempre y cuando tu tema sea «Translation ready»
Irena
Hola Irena,
Como siempre tus artículos me han sido de mucha utilidad, esta de mas decirte que la dedicación y empeño que pones al redactarlos están de manifiesto.
He podido traducir toda mi web en proceso todavía, pero lo único que no puedo encontrar es esta cadena ( 16 febrero, 2015 at 9:18 am ) en concreto el termino (at) que esta en la fecha y hora de los comentarios.
Si me puedes dar una pista de como solucionarlo te estaría eternamente agradecido.
Saludos!!!
Ese texto viene en la carpeta de idiomas del núcleo de WordPress: %1$s at %2$s (inglés), %1$s a las %2$s (español)
/wp-content/languages/es_ES.po
Hola Irena,
Esta cadena ya la había cambiado pero sigue igual en ingles alguna sugerencia?
Desde ya gracias por todo!!! 🙂
Si tienes el sitio web configurado con el idioma español (Ajustes > generales > Idioma del sitio > Español), esa cadena debería de cambiar automáticamente
Muchas gracias Irena por tu aclaración con las traducciones, que hasta ahora he tenido bastante lío. He leído en algún sitio que haciendo la instalación multisite (creo que se llamaba así) tienes un solo fichero para las traducciones.
Que tengas buena semana.
Hola Irena, Gracias por la explicación es muy buena. Me he puesto a traducir un template que he comprado y resulta que tiene #@ es decir:
#: 404.php:14
#@ mitemplate
msgid «Error 404»
msgstr «»
# es simplemente para indicar donde se encuentra la cadena que se va a traducir
#@ ???
msgid «Error 404» es la cadena que se va a traducir
msgstr «» es la traducción
Qué es el #@???
Gracias, espero tu respuesta.
Pues no lo sé. Supongo que me estás hablando de caracteres que te aparecen en el archivo po de tu tema. Lo único que debes hacer es respetar todos los caracteres del texto original en la traducción.
Supongo que es algo para indicar en que plantilla aparece la cadena. Aprovecho para preguntarte, si tengo en_US.po y es_ES.po con cambiar en wp-config la línea define(‘WPLANG’, ‘es_ES’); aplica el idioma español a wordpress, plantilla y plugins?
Un saludo.
La variable WPLANG ha desaparecido ya desde WordPress 4.0. Basta con ir a Ajustes > Generales > Idioma del sitio (abajo del todo), y seleccionar (o instalar en su caso) el idioma español. Esto cambiará el idioma de WordPress y también de las plantillas (y plugins), siempre y cuando tengan una traducción al español (no todos los temas y plugins vienen con traducciones).
Muchas gracias, justo ayer lo vi además que lo pone jejejje. Dices que se traduce todo, pero entre wordpress, woocommerce (en mi caso), plugins y plantilla, en qué carpeta busca las traducciones?
En el fichero function.php de mi plantilla hija tengo puesto «/languages» y al ser ruta relativa creo que se refiere a «…/woocommerce/…/miplantilla-hija/languages». Tengo que tener todas las traducciones, digamos de woocommerce, wordpress y demás? o con tener las de mi plantilla vale?
Porque el problema con el que estoy ahora es que no me traduce todas las frases de la plantilla digamos los textdomain, y me estoy volviendo loco ya jejejje.
Las traducciones (archivos po y mo) vienen en diferentes ubicaciones:
– wp-content/languages (archivos de idiomas del núcleo de WordPress)
– /wp-content/themes/nombre-del-tema/languages (archivos de traducciones de tu tema)
– /wp-content/plugins/nombre-del-plugin/languages (archivos de traducciones del plugin)
Si tu tema (o plugins) no disponen de la carpeta «languages» o sí que existe pero no contiene los archivos po o pot, entonces no está preparado para ser traducido a otros idiomas (no es «translation ready)
Saludos,
Antes que nada, muchas gracias Irena por compartir tus conocimientos con todos.
Quisiera dejar una pregunta para el que pudiera echarme una mano:
Poseo varias instalaciones de wordpress con la misma plantilla, y me gustaria poder tener los archivos .po y .mo en una única ubicación para tener la traduccion organizada. ¿Alguien sabe como puede hacerse esto?
Si utilizas una instalación de WordPress Multisite todos los archivos po y mo están en la misma carpeta, en cambio, si utilizas varias instalaciones individuales de WordPress cada una debe llevar sus propios archivos po y mo
Poseo varias instalaciones pero son independientes, me refiero a que cada una estan en carpetas diferentes.
Poedit es el mejorcito ya que ayuda a traducir frases que ni el Codestyling Localization Plugin localiza
excelente artículo …muchas gracias!
Hola Kceres, ¡muchas gracias a ti!
Hola,
Hay un nuevo servicio donde todas las plantillas ya están traducidos e incluso en más de 18 idiomas, y también en la lengua española. Puedes crear tu sitio web en un sólo idioma o en varios, sin necesidad de complementos adicionales. Todos los temas están basados en un gran sistema de arrastre dentro del editor web. http://www.ait-themes.club/es/
Un saludo 🙂
Hola Aurelio, gracias por la información
Muchas Gracias me ha servido para traducir el tema de mi web.
Sigue asi……
Un saludo
Gracias a ti por comentarlo
Una pregunta, si utilizo Poedit y actualizan el tema y añaden nuevas líneas al archivo de traducción original del tema, tendré que volver a traducir todas las líneas o cómo?
En este caso lo más probable es que desaparezcan. Lo más recomendable es siempre guardarse una copia de los archivos po y mo que hayas traducido. De esta manera cuando se actualice el tema solo tendrás que volver a subir esos archivos po y mo al servidor (a la carpeta «languages» de tu tema).
Hola a todos!
Un gran aporte, muchas gracias.
Tengo un problemilla con los acentos y la ñ.
Aparece este símbolo � cuando aparece alguna de ellas en las web.
¿Pueden ayudarme?
Saludos y gracias de nuevo.
Hola Francisco,
Deber ser un problema de codificación de caracteres. Con Poedit debes seleccionar la codificación UTF-8. Menú > Catálogo > Propiedades > Conjunto de caracteres.
Muchas gracias Irena! Se solucionó así.
Muchas gracias por tu esfuerzo y dedicación, es un gusto saber que hay personas que ayudan desinteresadamente a su projimo
Hola Irena, gracias por tus aporte al igual que Jesus, nos queda una duda sobre como realizar la traducción, una vez he subido el archivo .mo que he nombrado como es_CO.mo, no logro hacer que el theme sea traducido, he verificado la ruta de ubicacion del mismo y aun no encuentro como traducirlo,
les agradezco la guia en este tema
Hola Luis Alberto,
En tu tema parecer ser que los archivos están en la carpeta:
wp-content/themes/parallax/inc/languages
Deberás hacer la traducción y subir los archivos .po y .mo a dicha carpeta
Por último, si no lo has hecho ya, deberás modificar esta línea del archivo del archivo wp-config.php:
define (‘WPLANG’, ‘es_ES’);
Hola irena, Gracias por la informacion que me das, he buscado la carpeta inc de la ruta
wp-content/themes/parallax/inc/languages y solo encuentro lo siguiente:
wp-content/themes/parallax-effect/languages alli es donde he dejado los archivos de traducción, pero un así no me aparece nada traducido, estos archivos los he realizado a través de Poedit para linux y los he nombrado «es_CO.po» y «es_CO.mo«
por lo demás en el archivo de configurar de WP es decir wp.config, ya modifique eso hace rato y logre traducir con ello algunos widgets, pero no veo como cambiar lo demas, como el «leave a comment»
Hola Luis Alberto,
Acabo de darme cuenta que con WordPress 4.0 puedes seleccionar el idioma del núcleo de WordPress directamente desde el panel de administración (ya no es necesario configurar la variable WPLANG). Debes ir a Ajustes > Generales, verás que abajo de todo hay un desplegable que te permite seleccionar el idioma de tu sitio web. Dime si esto soluciona tu problema.
Saludos
Hola Rusalia, ya lo tenia configurado en español, pero como puedes apreciar aquí:
http://nokler.co/galeria-bi…
al final de la pagina, aun hay cosas en Inglés, sin embargo lo he cambiado a la configuración es_CO que tenia del .mo y tampoco ha habido un cambio significativo
Quizás es por el nombre del archivo es_CO. En el repositorio de WordPress están solo las siguientes traducciones: es_CL, es_ES, es_MX, es_PE y es_VE.
Prueba a cambiar el nombre de los archivos .mo y .po a es_ES
Hola Irena, los he cambiado y no funciona, he buscado ademas otros temas que esten traducidos y tampoco funciono, al parecer me hace falta configurar algo ademas, o instalar algo mas con WordPress
el que tengo lo he instalado automaticamente desde el Host, asi que voy a realizar la instalacion desde 0 y te comento, ya que nada mas me ha funcionado bien
Hola, Irena:
Acabo de encontrar tu blog y ¡me encanta!
Quería dar mi granito sobre la traducción de los archivos PO.
SDL Trados Studio tiene desde hace un año un complemento gratuito que se llama «File Type Definition for PO» que permite traducir archivos PO, usar la memoria de traducción, hacer el QA integrado de Studio, etc.
En realidad es un filtro que se añade al listado de filtros de la aplicación, y funciona divinamente.
Antes de que saliera este filtro de SDL Trados Studio, lo que hacía era abrir el PO con la herramienta PoEdit, copiar cada uno de los segmentos con una macro, traducirlo y revisarlo con alguna herramienta TAO, y después pegaba las cadenas de texto con otra macro. Comento esto por si alguien no tiene SDL Trados Studio, pero sí otra TAO…
Por cierto, que la macro la escribí para AutoHotKey, un lenguaje muy facilito.
Saludos.
… Jesús Prieto …
Hola Jesús, ¡Muchas gracias!
La verdad es que no conocía ese complemento gratuito de Trados. Gracias por compartirlo. Seguro que también resulta de interés a otros usuarios que se pasen por aquí. Veo que controlas muy bien SDL Trados Studio. A mí siempre se me ha atrangado un poco. La veo como una herramienta de traducción muy potente pero muy poco intutitiva a la hora de utilizarla.
Acabo de darme una vuelta por tu blog y veo que tienes contenidos muy buenos. Gracias por pasarte por aquí
muchas gracias por el aporte,
me fue muy util
Hola Leo, muchas gracias por tu comentario. Me alegro que te haya sido útil.
Un saludo
Irena
Aquí es una buena herramienta de ayuda que yo uso para traducciones wordpress: https://poeditor.com/. Usted puede conseguir traductores para trabajar en un proyecto en unos 200 idiomas y la interfaz es muy fácil de usar. Todos los traductores deben saber sobre él.