Componenti di internazionalizzazione internationalizing-components
Internazionalizza i componenti e le finestre di dialogo in modo che le stringhe di interfaccia utente possano essere presentate in lingue diverse. I componenti progettati per l’internazionalizzazione consentono di esternalizzare, tradurre e importare le stringhe di interfaccia nell’archivio. In fase di runtime, le preferenze di lingua dell’utente o le impostazioni internazionali della pagina determinano la lingua da visualizzare nell’interfaccia utente.
Utilizza il seguente processo per internazionalizzare i componenti e fornire l’interfaccia utente in diverse lingue:
-
Implementa i componenti utilizzando un codice che internazionalizza le stringhe. Il codice identifica le stringhe da tradurre e seleziona la lingua da presentare in fase di esecuzione.
-
Creare dizionari e add le stringhe inglesi da tradurre.
-
Esporta il dizionario in formato XLIFF, tradurre le stringhe, quindi importare i file XLIFF tornano in AEM. In alternativa, è possibile aggiungere manualmente le traduzioni al dizionario.
-
Incorpora il dizionario nel processo di gestione delle versioni dell'applicazione.
Dizionari lingua language-dictionaries
Il framework di internazionalizzazione AEM utilizza i dizionari nell’archivio per memorizzare le stringhe inglesi e le loro traduzioni in altre lingue. Il framework utilizza l’inglese come lingua predefinita. Le stringhe vengono identificate utilizzando la relativa versione inglese. In genere, i framework di internazionalizzazione utilizzano ID alfanumerici per le stringhe di interfaccia utente. L’utilizzo della versione inglese della stringa come ID presenta diversi vantaggi:
- Il codice è facile da leggere.
- La lingua predefinita è sempre disponibile.
Le stringhe localizzate possono essere memorizzate in diversi dizionari nell’archivio. I dizionari di sistema AEM si trovano sotto /libs
nodo. Puoi creare dizionari per i componenti sotto la sezione /apps
nodo. Il quadro di internazionalizzazione AEM combina i dizionari e li rende disponibili in Sling come un unico ResourceBundle
oggetto. Quando i componenti vengono sottoposti a rendering, recuperano le stringhe tradotte dal bundle di risorse. I dizionari combinati vengono anche distribuiti sul server web in formato JSON per fornire stringhe tradotte al codice Javascript nelle pagine web.
Inoltre, il Strumento di traduzione consente di gestire tutti i dizionari da un’unica posizione centrale.
/libs
nodo.Sovrapposizione di stringhe nei dizionari di sistema overlaying-strings-in-system-dictionaries
Stringhe nei dizionari al di sotto del /apps
i nodi sostituiscono le stringhe duplicate nei dizionari che si trovano sotto la /libs
nodo. Se i componenti utilizzano stringhe incluse nei dizionari di sistema AEM, duplica la stringa nel dizionario. Tutti i componenti utilizzeranno le stringhe del dizionario.
Tieni presente che non è possibile prevedere quale traduzione viene utilizzata quando le stringhe sono duplicate in dizionari che si trovano tutti sotto la variabile /apps
nodo.