Inicio > Blog > Traducción > Cómo traducir un tema de WordPress: guía completa de traducción de temas

Cómo traducir un tema de WordPress: guía completa de traducción de temas

tutorial de temas de WordPress
Por Colín
Última actualización: 10 de julio de 2024

¿Necesitas una forma de traducir tu tema de WordPress a otros idiomas? En esta publicación, cubriremos todo lo que necesitas saber sobre la traducción de temas de WordPress.

La localización y la internacionalización de los temas de WordPress son importantes porque WordPress es utilizado por personas de todo el mundo. Tener un tema disponible en un solo idioma limita los lugares donde se puede utilizar y dificulta la creación de un sitio web de WordPress multilingüe.

Sin embargo, no todos los temas de WordPress están preparados para la traducción. Y, incluso si un tema está preparado para la traducción, hay algunas peculiaridades, como el contenido generado por el usuario, que pueden dificultar la creación de un tema de WordPress totalmente multilingüe.

Para ayudarte a comprender completamente la traducción de temas de WordPress, en esta publicación vamos a cubrir dos cosas:

  1. Qué significa que un tema de WordPress esté “preparado para la traducción” y cómo funciona la internacionalización de temas.
  2. Cómo usar TranslatePress, un plugin de traducción de WordPress, para traducir cualquiera Tema de WordPress, aunque no esté preparado para la traducción 100%.

¿Qué hace que un tema de WordPress esté listo para la traducción? Cómo hacer que las cadenas del tema sean traducibles

No te preocupes si esta sección parece complicada; te mostraremos una forma más sencilla de traducir temas de WordPress en la próxima sección.

Además, si eres usuario de WordPress (en lugar de un desarrollador), probablemente no tendrás que interactuar con estos conceptos, especialmente si usas el TranslatePress complemento.

La verdad sobre cómo funciona la traducción de temas de WordPress

El método estándar para hacer que las cadenas de los temas de WordPress sean traducibles implica:

Cuando un desarrollador crea un tema, necesita usar algo llamado gettext al agregar texto que será mostrado por el tema (como el enlace de la “siguiente página” en la página de la lista de tu blog).

Los desarrolladores pueden lograr esto envolviendo las cadenas de texto en una función de localización, en lugar de codificar el texto de forma rígida.

Aquí tienes un ejemplo sencillo de contenido codificado de forma rígida (hard-coded) frente a un tema de WordPress con la internacionalización adecuada:

Texto incrustado (no apto para traducción):

<p>Página siguiente</p>

Función Gettext/localización (lista para traducción):

<p><?php _e( 'Next Page' ); ?></p>

Si no estás seguro de lo que está pasando ahí, aquí tienes la diferencia básica en un español sencillo:

  • Sin gettext – el tema le dice a WordPress, “oye, esta cadena de texto siempre es ‘Next Page'”. No piensa en el idioma en absoluto; es simplemente “Next Page” sin importar qué.
  • Con gettext – el tema le dice a WordPress “oye, muestra lo que sea el equivalente a ‘Página siguiente’ en el idioma seleccionado.” Por ejemplo, si el idioma es español, muestra el equivalente en español.

Para que vaya acorde con el tema de estar codificado correctamente, también necesitas un Archivo MO o PO. En esencia, este archivo contiene una lista de todas las cadenas gettext del tema en el idioma de destino. El archivo base suele estar en inglés, pero los desarrolladores o colaboradores puede agregar más archivos de idioma para otros idiomas.

Por ejemplo, cuando el tema necesite mostrar el equivalente a “Next Page” en español, acudirá al archivo de idioma español para obtener la traducción adecuada.

Puedes crear y editar un paquete de idioma de tema usando un software como Poedit. Muchos temas de WordPress también incluyen ya archivos de idioma para un buen número de idiomas.

Si estás viendo un tema en WordPress.org, puedes buscar el Listo para traducir etiqueta para verificar que el tema cumple con los estándares adecuados de internacionalización.

Luego, si haces clic en el [Nombre del Tema] opción en la barra lateral, puedes ver una lista de todas las traducciones que ya están incluidas en el paquete de idiomas de ese tema:

Translation Ready WordPress theme

En la sección de traducciones, podrás ver cada idioma, así como el nivel de avance de sus traducciones:

WordPress theme translation languages

Diferentes tipos de contenido de temas de WordPress

Hasta ahora, nos hemos centrado en la localización de temas de WordPress con gettext. Nuevamente, esta es la forma de hacer cuál sería contenido de tema estático traducible. Por “contenido de tema estático”, nos referimos a elementos que siempre están presentes como:

Sin embargo, muchos temas también te permiten añadir tu propio contenido generado por el usuario, lo que requiere un enfoque diferente para la traducción de temas de WordPress. Por ejemplo, el tema Hestia te permite crear tu propio diseño de página de inicio utilizando opciones en el Personalizador de WordPress:

Example of user-generated content

Todo este contenido será diferente para cada sitio, por lo que no se almacenaría en el archivo de traducción de un tema ni utilizaría el filtro gettext.

Entonces… ¿cómo puedes traducir este contenido generado por el usuario? Bueno, con muchos Plugins de traducción de WordPress, tendrías que marcar manualmente cada cadena de contenido generado por el usuario como traducible, lo que añade complejidad y tiempo a la localización de tu tema. Así que, si los desarrolladores del tema no añaden compatibilidad con el plugin de traducción que estás utilizando, simplemente no funcionará en absoluto.

Sin embargo, con el complemento TranslatePress, que te mostraremos en la siguiente sección, puedes traduce este contenido de tema dinámico generado por el usuario recién salido de la caja. Funcionará con cualquier tema de WordPress, sin necesidad de compatibilidad adicional.

Cómo traducir las cadenas de un tema de WordPress con TranslatePress

La forma más sencilla de traducir un tema de WordPress es utilizar el plugin TranslatePress. No solo es un plugin para traducir temas de WordPress, sino que también te permitirá traducir el resto de tu sitio web de WordPress, incluido el contenido de los complementos y incluso cadenas AJAX.

TranslatePress funcionará con todos los temas, incluidos aquellos que son traducción lista y aquellos que no son.

En términos más técnicos, esto significa que usted puede traducir:

  • contenido gettext (la forma “correcta” de programar para la internacionalización en los temas de WordPress);
  • Contenido de temas (y plugins) que no son usando gettext;
  • Contenido generado por el usuario a partir de opciones de temas, metadatos de usuario o incluso una tabla de base de datos personalizada.

En definitiva, tanto si tu tema está preparado para la traducción como si no, podrás gestionar todo el proceso de traducción del tema mediante una interfaz visual muy parecida al conocido Personalizador de WordPress:

Example of how to translate a WordPress theme

Si tu tema incluye su propio paquete de idiomas, TranslatePress detectará automáticamente esas traducciones y las utilizará para las cadenas gettext del tema. No obstante, podrás editar manualmente las traducciones del paquete de idiomas si prefieres utilizar otras traducciones.

Aquí tienes una guía rápida sobre cómo traducir un tema de WordPress con TranslatePress…

TranslatePress Multilingüe

TranslatePress es la forma más sencilla de traducir tu sitio web de WordPress. Es rápido, no ralentiza tu sitio web, funciona con CUALQUIER tema o plugin y es compatible con el SEO.

1. Configurar los ajustes básicos de TranslatePress para la traducción de temas de WordPress

Antes de que puedas empezar a traducir tu tema de WordPress, necesitas configurar algunos aspectos básicos.

Primero, instala y activa el plugin gratuito TranslatePress de WordPress.org. Luego, ve a Configuración → TranslatePress para elegir el o los idiomas a los que deseas traducir tu tema de WordPress (y el resto del contenido de tu sitio):

Choose languages for theme translation

TranslatePress también te ofrece la opción de traducir automáticamente tu sitio web (y el tema) mediante TranslatePress AI. Se trata de una solución automática que utiliza una combinación de motores de traducción automática neuronal de primer nivel, lo que proporciona a los propietarios de sitios web traducciones precisas e instantáneas de sus páginas web mediante IA.

Como alternativa, también tienes la opción de utilizar las API de Google Traductor o DeepL.

Si decides activar la traducción automática, TranslatePress traducirá automáticamente todo tu tema. Después, seguirás teniendo la opción de volver atrás y realizar cambios manualmente.

Para configurar la traducción automática, ve a la Traducción automática pestaña de la configuración de TranslatePress:

La pestaña de traducción automática ya está disponible con TranslatePress AI

2. Abre el editor TranslatePress

Una vez que hayas configurado los elementos básicos, puedes abrir el editor de traducción visual:

  • Visitando la página con el contenido que deseas traducir.
  • Haciendo clic en Traducir página botón en la barra de herramientas de WordPress.
How to open WordPress theme translate editor

Deberías ver una vista previa en vivo de la página. Para traducir cualquier elemento de la página, puedes pasar el cursor sobre él y hacer clic en el icono del lápiz. Eso abrirá la traducción en la barra lateral donde puedes agregar tus traducciones:

Example of how to translate a WordPress theme

Veamos cómo traducir las diferentes partes de tu tema.

Cómo traducir Gettext de un tema de WordPress

Como habrás recordado de lo anterior, muchos temas de WordPress ya incluyen paquetes de idiomas para las lenguas más habituales. Si este es el caso de tu tema de WordPress, TranslatePress utilizará automáticamente esas traducciones para las cadenas de gettext; no tendrás que traducirlo todo desde cero.

However, you still have the option of manually editing your theme’s gettext strings.

So how can you tell whether a string is gettext or not?

It’s easy:

If the pencil icon is green when you hover over a string, that means the string is gettext. Here’s what it looks like for the “Next” pagination button:

Translating theme gettext strings

If your theme has the relevant language pack, TranslatePress will automatically fill in its translation. You also have the option of “translating” the gettext string in the original language, as well. That’s useful if you don’t necessarily like the original wording.

Any translations that you save here will apply to todo instances of that string (even beyond this page).

How to Translate WordPress Theme User-Generated Content

Being able to translate gettext content will cover más of your WordPress theme’s content. But what about user-generated content, like the Hestia example from above?

Well, the basic process is exactly the same. You just hover over the text and click the pencil icon.

The main difference is that, since this user-generated content isn’t coming from gettext, it won’t have the green indicator. Instead, the pencil icon will be blue.

Here’s what it looks like for the user-generated theme content in Hestia:

How to translate WordPress theme user-generated content

You Can Translate the Rest of Your WordPress Site, Too

The great thing about TranslatePress is that it’s not just for WordPress theme translation – you can also use it to translate your pages, blog posts, forms, plugin content, and lots more.

It’s the easiest way to crear un sitio web multilingüe en WordPress.

We have detailed tutorials on how to translate popular types of WordPress content including:

Traduce tu tema de WordPress hoy

WordPress theme internationalization and localización are important parts of making your WordPress theme accessible to visitors from all around the world.

For an easy way to translate both WordPress themes that are translation ready y those that aren’t, you can use the free TranslatePress plugin.

TranslatePress will automatically detect your theme’s gettext strings, while also giving you the ability to edit those existing gettext strings y the rest of your theme and site’s content.

TranslatePress Multilingüe

TranslatePress es la forma más sencilla de traducir tu sitio web de WordPress. Es rápido, no ralentiza tu sitio web, funciona con CUALQUIER tema o plugin y es compatible con el SEO.

The free version lets you translate your theme into one new language, while the versión premium adds support for unlimited languages as well as:

  • Improved SEO multilingüe
  • DeepL integration for automatic translations
  • Cuentas de traductor dedicadas
  • Separate navigation menus based on user language
  • The option to browse your site (and translate content) as different user roles

Install TranslatePress and get started with WordPress theme translation today!

Do you still have questions about how to translate a WordPress theme? Let us know in the comments!

Si encontraste útil esta publicación, por favor visita nuestro Canal de YouTube, donde subimos constantemente tutoriales en video cortos y fáciles de seguir. También puedes seguirnos en Facebook y Twitter ser el primero en enterarte cada vez que publicamos.