Internationaliserende componenten

Internationaliseer uw componenten en dialogen zodat hun koorden UI in verschillende talen kunnen worden voorgesteld. Componenten die zijn ontworpen voor internationalisatie maken het mogelijk om UI-tekenreeksen te extern maken, te vertalen en vervolgens te importeren in de opslagplaats. Tijdens runtime bepaalt de taalvoorkeuren van de gebruiker of de landinstelling van de pagina welke taal wordt weergegeven in de gebruikersinterface.

chlimage_1-9

Gebruik het volgende proces om uw componenten te internationaliseren en de gebruikersinterface in verschillende talen te bieden:

  1. Implementeer uw componenten met code die tekenreeksen internationaliseert. Uw code identificeert de tekenreeksen die moeten worden vertaald en selecteert de taal die bij uitvoering moet worden weergegeven.

  2. Maak woordenboeken en 🔗 voeg de Engelse tekenreeksen toe die u wilt vertalen.

  3. Exporteer het woordenboek naar de XLIFF-indeling, vertaal de tekenreeksen en 🔗 importeer de XLIFF-bestanden weer in AEM. U kunt ook handmatig vertalingen🔗 aan het woordenboek toevoegen.

  4. Neem het woordenboek op in het releasebeheerproces van uw toepassing.

OPMERKING

De hier beschreven methoden voor het internationaliseren van componenten zijn bedoeld voor het omzetten van statische tekenreeksen. Wanneer componenttekenreeksen naar verwachting zullen veranderen, moet u conventionele vertaalworkflows gebruiken. Wanneer ontwerpers bijvoorbeeld een UI-tekenreeks kunnen bewerken met eigenschappen in het dialoogvenster Bewerken van een component, mogen ze geen taalwoordenboek gebruiken om de tekenreeks te internationaliseren.

Taalwoordenboeken

Het AEM internationalisatiekader gebruikt woordenboeken in de repository om Engelse tekenreeksen en hun vertalingen in andere talen op te slaan. Het framework gebruikt Engels als de standaardtaal. Tekenreeksen worden geïdentificeerd met behulp van hun Engelse versie. Bij internationalisatieframes worden doorgaans alfanumerieke id's gebruikt voor UI-tekenreeksen. Het gebruik van de Engelse versie van de tekenreeks als de id heeft verschillende voordelen:

  • Code is gemakkelijk te lezen.
  • De standaardtaal is altijd beschikbaar.

Gelokaliseerde tekenreeksen kunnen worden opgeslagen in verschillende woordenboeken in de opslagplaats. AEM systeemwoordenboeken bevinden zich onder het knooppunt /libs. U kunt woordenboeken voor uw componenten onder de /apps knoop tot stand brengen. Het AEM internationalisatiekader combineert de woordenboeken en stelt hen beschikbaar in Sling als één enkel ResourceBundle voorwerp. Wanneer componenten worden teruggegeven, winnen zij vertaalde koorden van de middelbundel terug. De gecombineerde woordenboeken worden ook in JSON-indeling op de webserver geïmplementeerd om vertaalde tekenreeksen aan JavaScript-code in webpagina's te verschaffen.

Met het Vertaalgereedschap kunt u bovendien alle woordenboeken vanaf één centrale locatie beheren.

chlimage_1-10

OPMERKING

Wijzig niet de AEM systeemwoordenboeken die zich onder de /libs knoop bevinden.

Tekenreeksen bedekken in systeemwoordenboeken

Tekenreeksen in woordenboeken onder het knooppunt /apps overschrijven dubbele tekenreeksen in woordenboeken die onder het knooppunt /libs liggen. Als uw componenten tekenreeksen gebruiken die in de systeemwoordenboeken van het AEM zijn opgenomen, dupliceert u de tekenreeks in uw eigen woordenboek. Alle componenten gebruiken de tekenreeksen uit uw woordenboek.

Merk op dat u niet kunt voorspellen welke vertaling wordt gebruikt wanneer de koorden in woordenboeken worden gedupliceerd die allen onder de /apps knoop worden gevestigd.

Op deze pagina