Come tradurre un ecommerce basato su Magento

Ragazzo indica logo magento

Magento è una piattaforma di e-commerce open-source, basata su PHP e MySQL e rilasciata per la prima volta nel 2008. Attualmente è di proprietà di Adobe, Inc. e recentemente è stato ribattezzato Adobe Commerce. La sua quota di mercato è stabile ma relativamente bassa, tra il 2% e il 3% di tutti i negozi online, ma di solito è preferito per i siti ad alto traffico.

Scelta della strategia di localizzazione di Magento

Per presentare un’ampia panoramica dell’ambiente di lavoro, questa guida tratterà solo uno dei due approcci principali per tradurre un e-commerce basato su Magento. Abbiamo scelto questo approccio perché Magento consente di esportare facilmente buona parte dei contenuti dell’e-commerce come semplici file CSV, un formato molto facile da tradurre. Il nostro approccio è sicuramente più lento, ma consente di controllare meglio l’intero processo. Quindi, se le tempistiche lo permettono, potrai tradurre il tuo negozio online Magento seguendo quattro passaggi fondamentali:

  1. Preparare l’installazione di Magento per renderla multilingue
  2. Estrarre i contenuti testuali del sito
  3. Tradurre i file risultanti
  4. Pubblicare le traduzioni

La procedura suggerita si basa su Magento Open Source versione 2.3, ma dovrebbe essere valida anche per le versioni successive.

L’approccio alternativo consiste nell’utilizzare un connettore di localizzazione esterno, come Smartcat, Weglot, Memsource e molti altri. Questo approccio può richiedere meno sforzo manuale, ma sarà necessario affidarsi a chi ha sviluppato il connettore per l’assistenza e gli aggiornamenti futuri. Per saperne di più su questo approccio, consulta il nostro report su come Tradurre siti web con i proxy di traduzione.

Molte fasi del flusso di lavoro suggerito richiedono diritti di amministrazione. Si presume che tu abbia privilegi di amministratore (o simili) sull’installazione di Magento Commerce, altrimenti non ti sarà possibile eseguire comandi, installare estensioni, ecc.

Preparare Magento Open Source per renderlo multilingue

Prima di tutto, esaminiamo dove si trovano i contenuti traducibili nel sistema Magento:

  • Messaggi di backend e di sistema
  • Temi
  • Contenuti del CRM
    • Pagine
    • Blocchi
  • Contenuto dinamico
    • Attributi
    • Categorie
    • Prodotti
  • Estensioni
  • File esterni
    • Modelli di e-mail
    • Immagini
    • PDF
    • Video
  • Codice incorporato

I modelli di e-mail sono solitamente memorizzati nella cartella del modulo Sales:
[root]/vendor/magento/module-sales/view/frontend/email/

Il backend e i messaggi di sistema predefiniti di Magento sono già tradotti in molte lingue dalla comunità e sono disponibili pubblicamente come “pacchetti linguistici” (language packeges) dal repository Github ufficiale Magento Internationalisation.

Pertanto, per avviare il processo di localizzazione:

  1. Scaricare e aggiungere il pacchetto linguistico di destinazione richiesto per ciascuna lingua di destinazione.
  2. Aggiungere una nuova Store View per ciascuna lingua
  3. Aggiornare la configurazione locale alle preferenze del paese di destinazione per quanto riguarda la valuta, le unità di misura, ecc.

Aggiungere un pacchetto linguistico in Magento

Si consiglia vivamente di chiedere a un esperto di installare un nuovo pacchetto linguistico, in quanto ci sono diversi modi possibili a seconda della configurazione del sistema. È necessario almeno avere accesso FTP alla cartella principale di Magento e caricare il dizionario di traduzione corrispondente in una cartella specifica.

A titolo di esempio, ecco la procedura per installare il pacchetto della lingua italiana:

  1. Scaricare il file del pacchetto linguistico italiano it_IT.csv da https://github.com/magento-l10n/language-it_IT.
  2. Caricarne il contenuto via FTP nella cartella seguente (crearla se non esiste):
    [root]/App/i10n/it_IT/.
  3. Svuotare la cache di Magento per applicare le modifiche al frontend.
  4. Per visualizzare il backend di Magento in italiano, cambiare la lingua di visualizzazione a livello di profilo utente, se necessario.

È sempre possibile aggiornare il pacchetto linguistico modificando il file it_IT.csv e caricandolo di nuovo nella stessa cartella e svuotando la cache successivamente.

Magento cercherà di applicare il dizionario di traduzione a tutto il testo visualizzato nel frontend. Ciò significa che la stessa parola sarà sempre tradotta nello stesso modo, quindi bisogna fare molta attenzione per evitare che venga applicata una traduzione sbagliata in un contesto diverso a parole con più di un significato.

Un modo per risolvere questo problema è quello di tradurre lo stesso elemento in modi diversi per moduli diversi, modificando il file CSV originale, che si presenta così:

"Add to Cart", "Aggiungi al carrello"

E specificare il modulo per ogni variante di traduzione:

"Add to Cart", "Aggiungi al carrello", module, Magento_Review
"Add to Cart", "Aggiungi al carrello della spesa", module, Magento_Catalog

Se non si è sicuri di quale modulo richieda una certa traduzione, o se ci sono più traduzioni all’interno dello stesso modulo, è necessario modificare la traduzione dell’elemento dal backend (vedi sotto), perché avrà sempre la massima priorità rispetto ai dizionari di traduzione. Per saperne di più, consulta questa pagina: https://developer.adobe.com/commerce/frontend-core/guide/translations/dictionary/.

In alternativa, Magento offre la funzione di Inline translation. La traduzione in linea è un modo semplice per tradurre i contenuti del negozio direttamente dal frontend, cliccando su ogni frase. Può essere attivata da Stores → Configuration → Advanced → Developer → Inline translation. Per ulteriori informazioni, consulta https://docs.magento.com/user-guide/system/translate-inline.html.

La traduzione Inline è disponibile solo in modalità Sviluppatore, che può essere impostata da un amministratore.

Aggiungere una Store View per una nuova lingua in Magento

Una volta aggiunta la nuova lingua a Magento, è necessario creare una nuova Store View, per aggiungere nel frontend il menu per passare da una lingua all’altra (language switcher). Per aggiungere una nuova store view, procedere come segue:

  1. Accedere al pannello di amministrazione e procedere su Stores → Settings → All Stores.
  2. Fare clic su Create Store View in alto a destra.
  3. Compilare il modulo come segue:
    Store è il negozio padre della nuova Store View.
    Name è il nome della nuova store view, che verrà visualizzato nel menu della lingua, ad esempio Italiano.
    Code è l’ID della store view e deve essere minuscolo, ad esempio italiano.
  4. Attivare la nuova view.
  5. Immettere un numero di Sort Order (opzionale) per modificare l’ordine in cui viene elencata la view
  6. Salvare la nuova Store View.

Se il negozio originale è in una sola lingua, è possibile che la lingua non sia indicata nella configurazione della store view, ma sia semplicemente impostata come “Default” invece di “English”. In questo caso, si consiglia di usare come nome e ID la lingua di origine corrispondente e di assicurarsi che anche tutti gli elementi di contenuto traducibili siano impostati con l’ID della lingua corretta.

Aggiornare la configurazione di localizzazione di una Store View di Magento

La nuova configurazione del negozio dev’essere aggiornata per riflettere le impostazioni locali, cioè il paese, la regione, l’unità di misura, la valuta ecc. Procedere come segue:

  1. Andare a Store → Settings → Configuration.
  2. Selezionare la store view per la lingua che si desidera configurare dal menu a discesa in alto a sinistra.
  3. Nel pannello General, deselezionare le caselle Use Website accanto ai campi e impostare i menu a discesa sui valori corrispondenti per Country, Locale, ecc.
  4. Selezionare Currency Setup, deselezionare le caselle Use Website accanto ai campi e selezionare la nuova valuta, ad esempio Euro.
  5. Salvare.
  6. Aggiornare il tasso di cambio se necessario da Stores → Currency → Currency Rates.

Come tradurre i temi di Magento

Analogamente a quanto visto per l’aggiunta di un pacchetto linguistico, i testi dei temi di Magento possono essere tradotti aggiungendo un dizionario di traduzione, che è un file CSV situato in una cartella specifica del tema. Se il dizionario di traduzione per la lingua di destinazione non è disponibile, è possibile generarlo e tradurlo manualmente.

  1. Creare la struttura di cartelle richiesta per il tema, aggiungendo la cartella
    [magento_root]/app/design/frontend/[vendor_name]/[theme_name]/i18n.
  2. Estrarre il testo traducibile in formato CSV: aprire il terminale a riga di comando e lanciare il comando bin/magento i18n:collect-phrases, seguito dalle opzioni richieste (file di output, cartella da tradurre).
  3. Il file risultante avrà due colonne nella lingua di partenza, la prima deve rimanere non tradotta, mentre la seconda deve essere tradotta nella lingua di arrivo.
  4. Rinominare il file tradotto utilizzando il codice ISO della lingua di destinazione, ad esempio it_IT.csv per l’italiano.
  5. Caricare il nuovo file CSV nella cartella creata all’inizio.
  6. Svuotare la cache.

Come tradurre i contenuti di un negozio Magento

I contenuti traducibili in un negozio online Magento possono essere suddivisi in due categorie: contenuti statici e contenuti dinamici.

I contenuti statici sono tipicamente menu, pagine (ad es. la home page, la pagina “Chi siamo”, ecc.) e blocchi, e sono collegati da widget. Ogni widget è fondamentalmente un insieme di opzioni che definisce il modo in cui un determinato blocco viene visualizzato in una determinata pagina. Possono essere tradotti solo dal backend e la stessa pagina in lingue diverse deve condividere lo stesso valore di URL Key.

I contenuti dinamici, invece, sono i nomi dei prodotti, le descrizioni e i metadati, insieme ai loro attributi e categorie. Possono essere tradotti dal backend o in formato CSV.

Tradurre le pagine di Magento dal backend

La traduzione delle pagine dal backend può essere effettuata manualmente come segue:

  1. Entrare in Content → Elements → Pages.
  2. Aprire la pagina di partenza in modalità di modifica, impostare la Store View sulla lingua appropriata, quindi:
    1. Aprire un nuovo documento in un editor di testo semplice.
    2. Copiare-incollare tutto il testo traducibile nell’editor di testo: il titolo, l’intestazione, i metadati...
    3. Fare clic su Show/Hide Editor per visualizzare il codice HTML e copiare-incollare il codice nel documento aperto nell’editor di testo.
    4. Salvare il documento come HTML e tradurlo.
  3. Fare clic sul menu Save e selezionare Save & Duplicate.

Dopo aver completato la traduzione:

  1. Tornare a Content → Elements → Pages
  2. Aprire la pagina duplicata in modalità di modifica.
  3. Copiare-incollare dal file nella nuova lingua il titolo, l’intestazione e il codice HTML della pagina tradotta, nei campi corrispondenti della casella Contenuto.
  4. Lasciare la URL key originale e copiare-incollare i metadati tradotti nella casella SEO.
  5. Scegliere la Store View per la nuova pagina.
  6. Salvare.

Potrebbe essere necessario andare alla pagina Edit URL Rewrite for CMS per modificare il Request path al fine di evitare conflitti.

Tradurre i blocchi di Magento dal backend

Anche i blocchi sono contenitori di testo da visualizzare all’interno di diverse pagine. Per tradurre il loro contenuto, procedere come segue:

  1. Entrare in Content → Elements → Blocks.
  2. Aprire il blocco di partenza in modalità di modifica, impostare la Store View sulla lingua appropriata, quindi:
    1. Aprire un nuovo documento in un editor di testo semplice.
    2. Copiare-incollare il titolo del blocco e fare clic su Show/Hide Editor per visualizzare il codice HTML, quindi copiare-incollare il codice nel documento aperto nell’editor di testo.
    3. Salvare il documento come HTML e tradurlo.
  3. Fare clic sul menu Save e selezionare Save & Duplicate.

Dopo aver completato la traduzione:

  1. Tornare a Content → Elements → Blocks.
  2. Aprire il blocco duplicato.
  3. Copiare-incollare dal file nella nuova lingua il titolo e il codice HTML del blocco tradotto, nella casella dell’Editor. Modificare l’identificativo, se necessario.
  4. Salvare.

Configurare un nuovo Widget in Magento

A questo punto bisogna impostare un widget che colleghi ogni nuovo blocco nella lingua di destinazione alla pagina corrispondente. A differenza delle pagine e dei blocchi, i widget non possono essere duplicati; pertanto, una volta creato il blocco nella nuova lingua, è necessario creare un widget e applicare le stesse opzioni della lingua di partenza, tranne la Store View a cui è assegnato. Procedere come segue:

  1. Entrare in Content → Elements → Widgets.
  2. Aprire il widget che collega il blocco originale alla pagina originale e modificare l’assegnazione della Store View alla lingua di origine, se necessario, e salvare.
  3. Aprire un’altra scheda del browser, andare su Content → Elements → Widgets e creare un nuovo widget.
  4. Applicare le stesse opzioni di Type and Layout del widget originale, digitare il nome del widget nel campo Title e selezionare la Store View per la lingua di destinazione.
  5. Salvare il nuovo widget.
  6. Svuotare la cache di Magento per applicare le modifiche.

Tradurre i contenuti dinamici di Magento dal backend

Come per i contenuti statici, anche i nomi dei prodotti, le descrizioni ecc. possono essere tradotti dal backend. Per prima cosa, però, è probabile che si vogliano tradurre gli elementi relativi ai prodotti che di solito sono fissi, come gli attributi e le categorie.

Tradurre attributi e categorie dei prodotti di Magento

Gli attributi sono di solito le proprietà dei prodotti, per permettere ai clienti di scegliere tra le varianti di un prodotto come il colore, le dimensioni, il peso, il materiale, ecc. Pertanto, è necessario tradurre il nome dell’attributo e di ogni variante, come segue:

  1. Entrare in Stores → Attributes → Product.
  2. Nella tabella, fare clic sull’attributo da tradurre.
  3. Nel pannello di sinistra, fare clic su Proprietà e digitare la traduzione dell’etichetta per ogni attributo.
  4. Fare clic su Manage Labels e inserire la traduzione del nome dell’attributo tradotto per ciascuna Store View.
  5. Salvare.

Il set di attributi è un riferimento interno, non viene visualizzato dall’utente finale e quindi non dev’essere tradotto.

Le categorie, invece, sono un modo per raggruppare i prodotti per tipologia, ad esempio Narrativa, Saggistica, Romanzo, Poesia, ecc... Ogni categoria e sottocategoria deve essere tradotta separatamente, come segue:

  1. Entrare in Catalog → Categories
  2. Selezionare la Store View per la lingua di destinazione.
  3. Fare clic sulla categoria da tradurre e deselezionare la casella Use Default Value sotto il nome della categoria.
  4. Digitare il nome della categoria tradotta nello stesso campo.
  5. Salvare.

Tradurre prodotti e descrizioni di Magento

Ogni articolo del catalogo può essere aperto e modificato direttamente dal backend, assicurandosi che sia selezionata la Store View corretta.

  1. Andare su Catalog → Products e fare clic sull’articolo da tradurre
  2. Selezionare la lingua di destinazione dal menu a discesa in alto a sinistra
  3. Deselezionare la casella Use Default View sotto il nome del prodotto e aggiungere la traduzione del nome.
  4. Tradurre il resto dei testi dei prodotti, la descrizione, i metadati, ecc.
  5. Salvare.

Tradurre prodotti e descrizioni di Magento attraverso l’esportazione/importazione

Per tradurre l’intero catalogo prodotti in una sola volta, è necessario esportarlo in formato CSV e tradurlo al di fuori di Magento.

Per avviare l’esportazione dei prodotti, procedere come segue:

  1. Entrare in System → Data transfer → Export.
  2. Selezionare Products come Entity Type.
  3. Escludere gli attributi privi di testo traducibile.
  4. Selezionare CSV come formato di file di esportazione.
  5. Fare clic su Continua.
  6. Scaricare il file di esportazione dalla casella in basso.

Molte colonne possono essere escluse, in quanto non contengono testo traducibile. Di solito è necessario concentrarsi sulle seguenti colonne (potrebbero essercene altre):
name
description
short_description
meta_title
meta_keywords
meta_description

Dopo aver tradotto il file, assicurarsi che ogni cella della colonna store_view_code contenga l’ID della Store View che è stato impostato all’inizio quando si è aggiunta la nuova Store View – nel nostro caso italiano. Per importarlo in Magento procedere come segue:

  1. Entrare in System → Data transfer → Import.
  2. Selezionare Products come Entity Type.
  3. Selezionare Add/Update come Import Behaviour.
  4. Selezionare il file tradotto e fare clic su Check Data in alto a destra.
  5. Fare clic su Import o modificare il file per correggere eventuali errori e ripetere l’operazione.

Oltre alla funzione di esportazione predefinita di Magento, esistono anche estensioni in grado di esportare i contenuti in altri formati, come Improved Import & Export Magento 2 Extension.

Tradurre i modelli di e-mail e newsletter di Magento

I testi delle e-mail predefinite sono già tradotti nel pacchetto della lingua di destinazione, ma se i modelli sono stati personalizzati, sarà necessario generare un dizionario di traduzione per ogni lingua di destinazione e tradurlo.

  1. Estrarre il testo traducibile in formato CSV: aprire il terminale a riga di comando e lanciare il comando bin/magento i18n:collect-phrases, seguito dalle opzioni richieste (file di output, cartella da tradurre).
  2. Il file risultante avrà due colonne nella lingua di partenza, la prima deve rimanere non tradotta, mentre la seconda deve essere tradotta nella lingua di arrivo.
  3. Rinominare il file tradotto utilizzando il codice ISO della lingua di destinazione, ad esempio it_IT.csv per l’italiano (Italia).
  4. Caricare il nuovo file CSV nella cartella corrispondente.
  5. Svuotare la cache.

Verificare che il testo del modello sorgente sia formattato correttamente affinché il comando funzioni. Il testo traducibile deve essere sempre preceduto dalla direttiva trans, ad esempio:
Codice direttiva trans

Plugin di localizzazione per Magento

Esistono diversi connettori di traduzione per Magento che di solito sono legati a un fornitore o sviluppatore specifico. I più diffusi sono:

Per saperne di più, consultare la relativa documentazione.

Riepilogo

Abbiamo visto due approcci alla localizzazione di un e-commerce Magento. Il primo è più pratico e richiede più tempo, ma garantisce il pieno controllo sull’intero processo di localizzazione. Qui abbiamo esaminato come estrarre manualmente i testi del tuo negozio online per la traduzione e come pubblicarli in altre lingue.

L’approccio alternativo, invece, consiste nell’utilizzare un connettore di localizzazione e può essere più semplice, perché la maggior parte dell’estrazione del testo avviene automaticamente. Ma dipenderai da un fornitore esterno per la gestione, il supporto e gli aggiornamenti delle traduzioni, quindi devi valutare attentamente tutti i pro e i contro.

Contattaci se hai bisogno di aiuto per decidere la strategia di traduzione migliore per il tuo negozio Magento Commerce. Saremo lieti di aiutarti!

Traduttore tecnico, project manager, mentore e ammiratore dell’ingegno. Socio fondatore di Qabiria.

Leggi anche:

Parla con uno di noi

Spiegaci cosa ti serve con una mail a hola@qabiria.com o attraverso il modulo di contatto. Risposta garantita entro 24 ore, ma di solito molto prima.

Contattaci