Traducción tienda online Magento

Traducción tienda online Magento

Proceso de traducción general de Magento 2

En una instalación de tienda online Magento el idioma por defecto es el inglés, si la web se quiere en otro idioma, hará falta llevar a cabo una serie de cambios.

Una vez instalado Magento el siguiente paso es instalar lo que se conoce como paquete de idioma. El paquete de idioma consiste en unos ficheros que incorporan las traducciones de todos los textos que aparecen en la navegación y procesos de la web, tanto en el frontend, como en el backend. En una misma tienda online se pueden incluir diferentes paquetes de idiomas: los de la instalación de Magento y las de las diferentes extensiones que se hayan incorporado a Magento.

Los paquetes de idioma contienen un documento CSV con todas las cadenas de texto que aparecen en la navegación y procesos: "Te has registrado correctamente", "Ordenar por", "Seleccionar", "Eliminar producto del carrito", etc ... pueden parecer pocos textos, pero en una tienda online hay muchos más de los que nos podamos imaginar de entrada. *Estos paquetes, no contienen los textos que se han creado desde el gestor de contenidos de Magento: textos de páginas, textos de bloques, textos de las categorías, textos de las fichas de los productos, etc.

Como decíamos, los CSV contienen todas las traducciones en forma de cadenas de texto. La estructura de una línea dentro de este documento es similar la que se indica a continuación:

  • "My billing and shipping address are the same", "Mi dirección de facturación y de envío son las mismas", module, Magento_Checkout

La primera parte entre "comillas"corresponde a la cadena en el idioma por defecto (Inglés), la segunda hace referencia a la traducción, y la tercera se refiere al módulo donde se encuentra esta cadena de texto.

Traduccion magento

Captura de pantalla de documento CSV en el programa Sublime Text. A Falta de este programa, recomendamos abrir los documentos CSV con el programa libre Open Office.

Cuando se descarga un paquete de idioma desde la web para programadores de Magento, suele estar indicado en qué" %" está traducido al idioma en cuestión, en función de esto la web queda más o menos traducida, simplemente con el hecho de instalar el paquete. Si el CSV del paquete de idiomas está al 100% teóricamente ya no hará falta hacer nada más. Sin embargo puede (y suele) haber algunas cadenas que aparecen igualmente sin traducir, esto se debe a que éstas no están pasando correctamente por las funciones de traducción. En estos casos el programador deberá hacer acciones específicas para solucionar estos problemas o "bugs".

El hecho de que un paquete esté traducido al 100% es muy poco probable, sobre todo cuando la versión de Magento es más nueva, como es el caso de Magento 2.

Traducción de Magento al español

A parte, con el idioma Español, a menudo nos encontramos formas y vocabulario de países y regiones que no son el nuestro, el tratamiento por defecto suele ser en 3era persona: "Haga clic aquí en cuenta" en lugar de "Haz clic aquí". * Sólo cambiar este tratamiento en un documento CSV puede llevar horas porqué requerirá retocar casi todas las cadenas en español.

Un CSV de una tienda medianamente compleja puede tener unas 14.000 líneas. La mayoría de líneas corresponderán a partes del tablero de administración y otras muchas a partes de extensiones que si bien están pensadas para el frontend no aparecen, por ejemplo, podemos tener un módulo que permita 5 métodos de pago y solo estemos usando 1, por lo que parte de las cadenas de texto de este módulo no llegará a aparecer. La cantidad de texto del CSV que emerge (visible) en la tienda es una porción pequeña, como una punta de iceberg, pero el problema es que Magento no nos la diferencia del resto dentro del CSV y tenemos que ir averigúandolo.  

Hay dos maneras de traducir la navegación general de Magento 2

  • Empeñarse a traducir todas las líneas - no traducidas - del CSV. Sólo aconsejable cuando el paquete de idioma está traducido en casi su totalidad.
  • Traducir sólo las líneas que vemos que aparecen en el frontend de la tienda online. Implica un trabajo de recopilación de todas las cadenas de texto que veamos sin traducir en la web. Una vez anotadas estas cadenas, tendremos que irlas localizando dentro del CSV e ir traduciéndolas. 

Traducir las cadenas de texto en un documento CSV de Magento

La traducción de las cadenas es sencilla. Una cadena no traducida en el CSV tiene este formato:

  • "My billing and shipping address are the same", "My billing and shipping address are the same", module, Magento_Checkout

Y para traducirlo simplemente deberemos añadir la traducción en la segunda parte.

  • "My billing and shipping address are the same", "Mi dirección de facturación y de envío son las mismas", module, Magento_Checkout

A menudo las cadenas del CSV contienen variables que hay que respetar sin modificar.  En el caso de la línea que ponemos a continuación, la variable  %store_name haría referencia a la variable del nombre de la tienda. Si la tradujéramos a %tienda_nombre, ya no funcionaria. 

  • "Welcome to %store_name","Bienvenido a %store_name", module,Magento_Customer

El trabajo de traducción no es complejo, pero sí voluminoso y pesado, porque para hacer una buena recopilación de las cadenas de texto que faltan para traducir (después de la instalación del paquete de idioma), a parte de recorrer la web, simplemente navegando y recopilando los textos, hay que ir reproduciendo los diferentes casos y procesos: comprar un producto, comprar 2, registrarse, acceder como invitado, acceder al panel de usuario, llenar el perfil , crear y eliminar direcciones de envío, canjear cupones de descuento, elegir un método de envío y luego el resto, etc, etc... En definitiva llevar a cabo todos los procesos que vayan revelando todas las cadenas de texto a capturar.

Traducción de plantillas de correo electrónico y notificaciones a Magento 2

La traducción de las notificaciones se lleva a término de manera diferente. Si bien en un principio, en un Magento recién instalado, la propuesta de los textos por defecto de plantillas de correo electrónico se encuentra también en el CSV, es habitual que estos textos, en el desarrollo de la tienda, se separen para tener un mayor control sobre éstos y poder personalizarlos los. Las plantillas de correo electrónico quedan en un lugar de Magento donde se puede acceder desde el panel: marketing / plantillas de correo electrónico.

Para hacer las traducciones de las plantillas de correo electrónico deberemos duplicarlas al idioma que deseemos y sustituir los textos de dentro. Este trabajo debe realizarse de manera muy cuidadosa porqué el texto y el código de la plantilla (que sirve para insertar variables y construir la maquetación de la plantilla), van muy mezclados. Entre estos correos tenemos los correos más importantes como: Nueva cuenta, Pedido nueva, Factura nueva, Envío nuevo y también muchos otros, como: Recordatorio de contraseña, Confirmación de suscripción a boletín, etc. En una web media puede que haya unas 20 plantillas de notificaciones. Todo ello no es mucho volumen de texto pero sí resulta farragoso llevar a cabo la implementación de las  traducciones.

Traducción de páginas en Magneto 2

La traducción de páginas es la más sencilla en Magento 2, tenemos un contenido de una página a Magento y solo se trata de duplicar el contenido en una nueva página que asignaremos al nuevo idioma, e insertar el contenido. Como es habitual en los editores web, tendremos que insertar los textos traducidos en formato plano (los editores web se entienden poco con los textos maquetados que provienen de programas habituales de edición de textos: word, etc.).  El trabajo principal consiste en volver a dar formato a estos textos: negrita, cursiva, generar de nuevo enlaces, estallecer titulares, normalmente es poco trabajo y se hace rápido. 

Traducción de bloques en Magento 2

Cuando nos referimos a bloques de Magento nos referimos a zonas de la web que no son páginas ni tampoco son el catálogo,  carrito, proceso de compra, etc ... un bloque puede ser por ejemplo una franja del pie la web. Estos bloques se deben traducir duplicando el bloque e introduciendo las traducciones de manera similar a las páginas. Los bloques suelen ser más complicados de traducir porque a menudo albergan más contenido Html que las páginas y es mejor editarlos por la vista HTML del editor web. Por ejemplo, un pie de web puede llevar una párrafo explicativo y una serie de enlaces: rehacer los enlaces siempre lleva más trabajo que sustituir un texto plano o poco maquetado, como sí que acostumbra a haber en las páginas.

Traducción de banners e imágenes en Magento 2

Cuando se traduce una tienda hay que tener presente también que las imágenes llevarán más trabajo que un texto fácilmente editable desde el gestor de contenidos.

Por eso es importante que cuando se cree una tienda online se evite al máximo incluir imágenes con texto incrustado. Este texto hay que tenerlo en cuenta a la hora de recopilar las cadenas de texto a traducir y los archivos, cuando se crean en un primer idioma vale la pena conservarlos ordenados para posibles traducciones.

El logotipo de la web a menudo lleva un subtítulo incrustado en la imagen y por tanto, a la hora de hacer la traducción, no hay que olvidar hacer los cambios necesarios para que el logotipo pueda tener una versión para cada idioma.

Traducir elementos complejos en Magento 2

Por último, cada tienda tiene sus particularidades, carruseles, sliders, etc ... hay que tener en cuenta poder crear estos contenidos de forma que después puedan ser duplicados y traducidos.