Show Menu
ARGOMENTI×

Internazionalizzazione dei componenti

Internazionalizzate i componenti e le finestre di dialogo in modo che le stringhe di interfaccia possano essere presentate in lingue diverse. I componenti progettati per l’internazionalizzazione consentono l’esternalizzazione, la conversione e l’importazione nella directory archivio delle stringhe di interfaccia. In fase di esecuzione, le preferenze della lingua dell'utente o le impostazioni internazionali della pagina determinano la lingua visualizzata nell'interfaccia utente.
Per internazionalizzare i componenti e fornire l’interfaccia in lingue diverse, effettuate le seguenti operazioni:
  1. Implementate i componenti utilizzando il codice che internazionalizza le stringhe. Il codice identifica le stringhe da tradurre e seleziona la lingua da presentare in fase di esecuzione.
  2. Create dizionari e aggiungete le stringhe inglesi da tradurre.
  3. Esportate il dizionario in formato XLIFF, traducete le stringhe, quindi importate di nuovo i file XLIFF in AEM. In alternativa, puoi aggiungere manualmente delle traduzioni al dizionario.
I metodi descritti qui per internazionalizzare i componenti sono destinati alla conversione di stringhe statiche. Quando le stringhe di componente devono cambiare, è consigliabile utilizzare i flussi di lavoro di traduzione convenzionali. Ad esempio, quando gli autori possono modificare una stringa dell’interfaccia utente utilizzando le proprietà nella finestra di dialogo Modifica di un componente, non è consigliabile utilizzare un dizionario della lingua per internazionalizzare la stringa.

Dizionari lingua

Il framework di internazionalizzazione di AEM utilizza dizionari nell'archivio per memorizzare le stringhe in inglese e le relative traduzioni in altre lingue. Il framework utilizza l'inglese come lingua predefinita. Le stringhe sono identificate dalla relativa versione in 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 nella directory archivio. I dizionari di sistema AEM si trovano sotto il /libs nodo. È possibile creare dizionari per i componenti sotto il /apps nodo. Il framework di internazionalizzazione AEM combina i dizionari e li rende disponibili in Sling come un singolo ResourceBundle oggetto. Quando viene eseguito il rendering dei componenti, questi recuperano le stringhe tradotte dal bundle di risorse. I dizionari combinati vengono inoltre distribuiti sul server Web in formato JSON per fornire stringhe tradotte al codice Javascript nelle pagine Web.
Inoltre, lo strumento Utilizzo di Translator per gestire i dizionari Traduzione consente di gestire tutti i dizionari da una singola posizione centrale.
Non modificate i dizionari di sistema AEM che si trovano sotto il /libs nodo.

Sovrapposizione di stringhe nei dizionari di sistema

Le stringhe nei dizionari sotto il /apps nodo sostituiscono le stringhe duplicate nei dizionari che si trovano sotto il /libs nodo. Se i componenti utilizzano stringhe incluse nei dizionari di sistema di AEM, duplica la stringa nel tuo dizionario. Tutti i componenti utilizzeranno le stringhe del dizionario.
Non è possibile prevedere quale traduzione viene utilizzata quando le stringhe vengono duplicate in dizionari situati tutti sotto il /apps nodo.