Whenever we need a multilanguage website, WPML is, without a doubt, the most complete plugin to take on such task. Let's take a look at how to set up WPML to fully translate your website.

1. Obtain WPML

As we've explained previously, WPML includes a few components. The basic one is WPML Multilingual CMS, which includes basic control settings and the tools for translating the content. The rest of the contnent give extra functionalities which we can install only if we need them.

Download WPML from the official website.

WordPress Multilingüe
The banner above is an affiliate link. If you acquire the plugin through it, I'll make some profit out of it. It will still cost you the same. I recommend WPML because I think it's the best translaiton plugin and I use it in every project of mine.

WPML is sold in 3 versions:

  1. Multilingual Blog ($29). This is the more economical option, which might prove sufficient if we simply want to translate the content in our blog. We can only activate this license in 1 site. This comes with WPML Multilingual CMS, WPML Media Translations and WooCommerce Multilingual. The latter allows us to make a multilanguage online store, as its name woud imply.
  2. Multilingual CMS ($79). This option allows us to translate every element in our website, with support for e-commerce, page builders, plugins, themes, etc. This license allows downloading all available complements and can be activated in up to 3 different websites.
  3. Multilingual Agency (159$). If we're to use many websites, this is the more adequate solution. We can implement the necessary settings in as many websites as we want.

In my opinion, the best option is Multilingual CMS, because we can translate everything in our website with it.

We can find a comparison between the different WPML variants and other similar tools here.

Download, activate and register the plugin. Once this is done, we can proceed to configure WPML.

2. Language setup

The main settings to consider are:

Select the languages for the site

Select the different languages we're going to use, establish the default language and modify any of its parameters if needed, for example, which flags is it going to use.

Define the format to embed the languages to the links

The default setting makes it so each language appears as a subdirectory to our website. It's easy to set up and it's the most common option. We simply need to check that this setting works as intended with our permanent link structure, and make any pertinent changes in Settings => Permanent links.

If we choose to use different domains for each language, we need to create the corresponding entries in DNS and properly configure our server so it delivers the pages from the same WordPress installation.

Setup language menus

Here we can establish the order in which the available languages are shown, and what to do with the content which hasn't been translated yet.

Once we set the general parameters, we can generate the selectors to inlcude them into our website's menu's, entries, footers and as widgets. We can make changes to the settings as we verify that the results we get are the results we want.

We can customize the visual aspect via custom CSS code. We can also uncheck backwards compatibility if we don't need it. In the case of the menu, the selector is shown as an additional element. We have the wpml-ls-menu-item class, which we can modify as convenient for a more natural integration with the theme used.

If we wanted to, we could create fully custom selectors as well as include our ownolnguage selectors in any part of the site via shortcodes or PHP code.

Other language setup settings

Para terminar decidimos si queremos ocultar algún idioma, por ejemplo, si no tenemos traducida la totalidad del contenido. Podemos activar/desactivar la redirección automática del navegador hacia el idioma correspondiente de nuestro sitio, así como ajustar los ID para temas y plugins que no son multilingues. Esta última opción aumenta la carga de trabajo en el servidor, debemos usarla con precaución.

Con las opciones SEO le indicamos a los motores de búsqueda que se trata del mismo contenido en diferentes idiomas, de esta forma evitamos penalizaciones por contenido duplicado y nos ayudará a posicionarnos mejor en cada idioma.

Finalmentes podemos activar los comentarios sobre las traducciones, de esta forma nuestros usuarios pueden evaluar el contenido traducido e informarnos de errores que necesiten ser corregidos.

Finalizada la configuración de idiomas,  pasamos al siguiente aspection para terminar de configurar WPML.

3. Traducción de temas y plugins

Este apartado está estrechamente relacionado con el componente WPML String Translations. que muestra la potencia de WPML. 

WPML nos muestra todas las frases que podrían ser traducidas en los temas y plugins que tengamos instalados. Más adelante veremos como traducir las que deseemos. Si el desarrollador no ha creado el archivo de lenguaje correspondiente, podemos crearlo si lo necesitamos.

WPML rastrea todas las cadenas existentes en nuestro tema y plugins, y permite traducirlas, aunque no estén incorporadas a los archivos de idioma (.mo/.po).

4. Traduciendo las cadenas en nuestra web

¿Qué tiene de novedoso es módulo WPML String Translation? 

El procedimiento habitual es que los temas y plugins multilenguaje vengan acompañados del correspondiente archivo de idiomas con las traducciones. Si nuestro idioma no está incluido, utilizamos una herramienta como Poedit, lo creamos a partir de uno existente y lo subimos a nuestra instalación. Este procedimiento se usa para modificar las traducciones ya existentes.

Con WPML no es necesario, hace todo el trabajo por nosotros, también revisa el código PHP, detectando frases que no se hayan incorporo. A partir de ahí tenemos una interfaz de traducción simple y eficaz, como veremos más adelante.

Pero los chicos de OnTheGo han dado una vuelta de tuerca extra extra y el módulo es capaz de detectar frases generadas dinámicamente y las incorpora a la lista de cadenas a traducir. Esto incluye también los textos generados por el usuario.

De esta forma tendremos siempre a mano todo lo que necesite ser traducido (títulos, opciones, etc.), aunque no forme parte de nuestro contenido y evitamos lo que sucede a veces que nos encontramos frases en un idioma diferente al seleccionado.

El registro automático de frase ocurre cuando accedemos a una página, estando logueados como administradores. De esta forma se minimiza el impacto sobre el rendimiento de cara a los usuarios normales.

¿Cómo realizar la traducción de cadenas?

Si accedemos a la traducción de cadenas veremos una lista de todas las que podemos traducir

Podemos elegir entre mostrar todas las frases o solo las que necesiten traducción. Filtrar las cadenas de un dominio o por las prioridades de traducción.

La última opción nos permite escribir una parte o la totalidad de la frase y WPML nos mostrará todas las coincidencias encontradas.

El procedimiento de traducción es sencillo:

Hacemos click en traducir y, cuando terminamos, guardamos nuestro trabajo sin olvidarnos de marcar la traducción como terminada. Si no lo hacemos se nos mostrará la frase en el idioma original. Al visitar nuevamente la página nos aparecerá nuestra traducción.

Si seleccionamos alguna cadena, se activarán las siguientes opciones:

Eliminarla - como se registran dinámicamente, si modificamos alguna cadena, debemos borrar las versiones antiguas que no sean necesarias para no sobrecargar al servidor.

Cambiar el idioma - Tenemos la posibilidad de corregirlo cuando este se haya detectado incorrectamente el idioma original

Establecer la prioridad - Indicamos si la traducción es obligatoria, opcional o no se necesita

El enlace Traducir los textos de las pantallas de administración, al final de la página, permite traducir las opciones de administracion. Por otra parte, podemos exportar/importar los textos desde/hacia archivos .po y así reutilizar nuestras traducciones.

También es posible activar el rastreo de las frases para saber con exactitud su contexto y mejorar su traducción. Esta es una operación intensiva que debemos desactivar tan pronto hayamos finalizado.

WPML nos evita tener que traducir la misma cadena más de una vez. Si ya hemos traducido una frase se utilizará automáticamente en otras cadenas idénticas, excepto si creamos una traducción diferente que se adapte mejor al contexto.

5. Configurar WPML para traducir el contenido

Ha llegado el momento de configurar la traducción del contenido de nuestra web.

Veamos las opciones más importantes

Como traducir entradas y páginas

Nuestra primera decisión será como trabajar con las traducciones. Podemos hacerlo mediante el editor de WordPress o nuestro maquetador favorito. Si nuestro tema y/o maquetador son compatibles será mejor utilizar el editor de traducciones de WPML.

Además de mostrar en pantalla texto original, el editor de traducciones nos muestra solo los elementos que necesitan ser traducidos. También se encarga de mantener la jerarquía de paginas y otras opciones generales del contenido. Esto simplifica y acelera el proceso de traducción. 

El editor de traducciones avanzado, es un servicio que requiere una suscripción adicional, ofreciendo entre otras cosas: creación de diccionarios de términos (util para mantener la consistencia en las traducciones), servicios de traducción automática, reutilizacion de textos traducidos, etc.  

Como hicimos con la traducción de cadenas, realizamos las modificaciones, marcamos la traducción como terminada y guardamos el trabajo.

La lista actualizada de temas compatibles puede consultarse aquí y la lista de plugins compatibles la encontramos aquí

El resto de las opciones están perfectamente explicadas y podemos aceptar los valores por defecto. Yo recomiendo en el apartado Sincronización de entradas y páginas marcar las correspondientes a eliminar las traducciones cuando borramos los elementos en el idioma original.

Configuración de la traducción del contenido personalizado

Tendremos la lista correspondiente a los campos personalizados creados por nosotros o por los plugins y temas instalados. 

Para cada uno de ellos decidimos si serán o no traducidos o serán copiados del original a los diferentes idiomas. Si seleccionamos Copiar una vez, no se mantendrá la sincronización con el idioma original, es decir, una vez hecha la copia editaremos cada idioma por separado.

Tenemos opciones similares para las entradas y taxonomías, incuyendo las personlizadas

Por defecto se mostrarán solo los elementos traducidos, aunque podemos seleccionar que se muestren en el idioma predeterminado si no existe la traducción. 

En todas esta listas, veremos un candado si la opción en cuestion está definida en el archivo de configuración. Para modificarla esos tipos debemos hacer click en el candado.

Tendremos a nuestra disposición las diferentes cadenas administrativas y podremos decidir como serán traducidas.

Una opción muy interesante es que podemos revisar los enlaces en el contenido de nuestras paginas y entradas para redirigirlas de manera automática al contenido traducido, si procede.

El módulo WPML Media Translation nos permite traducir los atributos de los adjuntos (título, texto alternativo) de forma que las galerías y otros plugins muestren el contenido apropiado al idioma visualizado. También podemos revisar la galería de medios para añadir la información de idioma al contenido existente con anterioridad a la activación de WPML.

Sincronización de menus y taxonomías

Estas opciones nos permiten mantener estos elementos sincronizados en los diferentes idiomas. Podemos trabajar con el idioma original y luego crear/actualizar las traducciones y o posiciones en la jerarquía para el resto de idiomas usando estas opciones.

Este es un ejemplo para las categorías de entradas


Conclusiones

WPML, es un plugin de pago, pero vale la puena utilizarlo por ofrecer opciones que no encontraremos en los plugins gratuitos, permitiendo traducir absolutamente todos los elementos de nuestra web.

Posee una documentación muy extensa y su soporte técnico es excelente. Esto es fundamental para solucionar cualquier duda relacionada con el proceso de traduccón. ​

Finalmente, al adquirir WPML, recibimos una licencia de Toolset Types y Toolset Views Lite. Estas herramientas nos permiten añadir fácilmente nuevos tipos de contenido a nuestra web, sin necesidad de programar. En mi opinión, es un gran valor añadido, siempre es necesario hacer este tipo de personalizaciones, sea cual sea nuestro proyecto. 

Hemos visto en detalle como configurar WPML para ajustar la traducción de cada elemento de nuestra web. En próximas entradas analizaremos en profundidad el proceso de traducción del contenido.

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments