Dizionari
Come tradurre i testi fissi dell'interfaccia del sito web.
Introduzione
Dizionari è il sistema di traduzioni dei testi fissi dell'interfaccia del sito web — etichette, messaggi, testi dei pulsanti — cose che non sono contenuto di pagina, ma testo "incorporato" nel codice, e che comunque deve esistere in ogni lingua.
Coinvolge due formulari nel backoffice:
- Voce (
dictionary_entry) - Dizionario (
dictionary)
Voce
Definisce una "chiave" di traduzione — Codice (code, usato nel codice per recuperare il valore) e Descrizione. Es.: una voce modulo-contatto-successo, usata per il messaggio di successo del modulo di contatto (è esattamente quella che appare nel ModuloContatto della Funzionalità).
Dizionario
È il valore tradotto di una Voce, per una determinata Lingua (language_id) — campo Valore (value, accetta HTML).
A differenza delle Impostazioni, il Dizionario non ha un meccanismo di fallback senza lingua — ogni Voce deve avere un Valore definito esplicitamente per ogni lingua in cui viene usata. Se manca la traduzione in una lingua, il testo che appare è il codice stesso della Voce (es.: modulo-contatto-successo), non un valore generico.
Programmaticamente
La classe website/src/common/Cluar.js mette a disposizione funzioni per leggere voci del dizionario, tutte restituendo il codice della voce come risultato se non c'è traduzione (utile per notare traduzioni mancanti):
Cluar.dictionary(voce)— ottiene il valore tradotto nella lingua corrente, così come è stato salvato (può includere HTML).Cluar.plainDictionary(voce)— uguale, ma rimuove i tag<p>e<br>. È la più usata nelle etichette dell'interfaccia (pulsanti, campi di formulario, notifiche).Cluar.plainTitle(voce)— uguale, ma rimuove solo i tag<p>.Cluar.plainHTML(voce)— rimuove tutti i tag HTML.Cluar.dictionaryNoParagraph(voce)— rimuove solo i tag<p>(equivalente aplainTitle).
Prossimo passo
Esplora i Template.