Come Impostare le Traduzioni nel Tuo Tema in PrestaShop 1.7


Il sistema di traduzione di PrestaShop è evoluto da quando questo articolo è stato originariamente pubblicato nel 2017. Assicurati di leggere anche la documentazione più recente su come utilizzare le traduzioni PrestaShop per moduli e temi.

Questo articolo è la traduzione della documentazione ufficiale, non è aggiornato ad oggi ma è comunque rilevante in merito alle traduzioni prestashop quindi ti rimarrà sicuramente utile se stai cercando una soluzione in merito alle traduzioni.

Probabilmente sei già consapevole che la versione 1.7 viene con un nuovo sistema di traduzione e che il tema che stai costruendo può trarne vantaggio. Tuttavia, non abbiamo ancora fornito molti dettagli su come funziona il sistema di traduzioni PrestaShop 1.7, quindi ecco cosa dovresti sapere se vuoi tradurre il tuo tema per PrestaShop 1.7.

Prima di tutto, dovresti identificare in quale caso ti trovi:

  • Caso 1: Stai utilizzando stringhe che già esistono nel tema predefinito.
  • Caso 2: Stai creando nuove stringhe in file che già esistono nel tema predefinito.
  • Caso 3: Stai creando nuove stringhe in nuovi file, inclusi nella cartella del tema.
  • Caso 4: Stai creando nuove stringhe in moduli che dipendono dal tuo tema, ma non sono inclusi nella cartella /modules del tuo tema.

E ci sono alcune cose che dovresti sapere:

Questi metodi funzionano solo se stai lavorando su un tema con un nome diverso da “classic”. Se stai modificando il tema Classic e hai mantenuto la cartella “/classic”, le tue nuove stringhe non saranno rilevate.
PrestaShop cerca nuove stringhe solo in cartelle di temi diverse da “/classic”. Il sistema di traduzioni PrestaShop funziona senza problemi dalla versione 1.7.1.1. Se usi versioni precedenti, potresti dover applicare alcune patch. Questo non si applica alle traduzioni delle email – dobbiamo prima sistemare alcune cose.

Ora, cosa fare in ogni caso?

Caso 1: Stai utilizzando stringhe che esistono nel tema predefinito

Dovresti riutilizzare le stringhe così come sono, con lo stesso dominio, e verranno automaticamente tradotte. PrestaShop recupererà le traduzioni esistenti dal catalogo di traduzione predefinito, tradotto dalla comunità su Crowdin.

Caso 2: Stai creando nuove stringhe in file che già esistono nel tema predefinito

Dovresti seguire questi pochi passaggi.

  1. Usa un dominio personalizzato per le nuove stringhe
    Qualcosa come “Shop.Mytheme”.

Deve:

  • Iniziare con “Shop”.
  • Avere solo 2 livelli. Ad esempio “Shop.Mytheme.Checkout” non funzionerà.
  • Non essere in CamelCase. Ad esempio “Shop.MyTheme” non funzionerà.
  1. Esporta la lingua dalla pagina delle traduzioni
    Vai a Internazionale > Traduzioni > Esporta una lingua e seleziona una lingua.

Questo genererà un file come “ShopMytheme.fr-FR.xlf” se hai scelto il francese, per esempio. Se hai usato diversi domini, avrai tanti file quanti sono i domini.

  1. Copia il file nella cartella delle traduzioni del tuo tema

Se necessario, crea una cartella per la lingua.

Per esempio, se hai esportato la lingua francese, dovresti aggiungere il file in “translations/fr-FR”.

  1. Traduci le nuove stringhe usando la pagina delle traduzioni

Vai a Internazionale > Traduzioni > Modifica traduzioni. Seleziona “Traduzioni dei temi”, il tuo tema e la lingua che vuoi tradurre.

Il tuo dominio dovrebbe apparire nella sezione Shop, con tutte le tue stringhe:

Traducilo e salvalo una per una.

  1. Esporta il tuo tema per creare il file .zip finale

Una volta che hai terminato tutte le traduzioni, in tutte le lingue che vuoi aggiungere, esporta il tuo tema. Vai a Design > Tema & Logo > Esporta tema corrente.

Questo implica che il tema su cui stai lavorando sia attivato, ovviamente 🙂

Ecco fatto, il tuo tema è tradotto!

Caso 3: Stai creando nuove stringhe in nuovi file, inclusi nella cartella del tema

Finché i tuoi file sono effettivamente nella cartella del tema, dovresti seguire lo stesso processo del caso 2.

Caso 4: Stai creando nuove stringhe in moduli

che dipendono dal tuo tema, ma non sono inclusi nella cartella /modules del tuo tema
Leggi attentamente, questo è un po’ complicato.

Il sistema di traduzione prestashop 1.7 funziona per i temi e qualsiasi cosa inclusa nei tuoi temi. Sfortunatamente, non funziona per i moduli di terze parti. In breve: se le tue stringhe sono in un modulo della cartella /modules, e non nella cartella del tema, allora il sistema 1.7 non si applicherà. Per questi file, dovresti usare il sistema legacy.

Questo significa:

  • Non usare il metodo trans() per le stringhe
  • Tradurre tutte le tue stringhe da solo usando la pagina di traduzione legacy.
  • Includere i file di traduzione nel tuo modulo
  • Quando sei nella pagina di configurazione del modulo, clicca su Traduci nella barra superiore per poterlo tradurre.

Et voilà 🙂

Facci sapere se hai commenti!

Articolo originale: https://build.prestashop-project.org/howtos/translation/how-to-translate-your-theme/

Lascia un commento