Internationalisation de composants internationalizing-components

CAUTION
AEM 6.4 a atteint la fin de la prise en charge étendue et cette documentation n’est plus mise à jour. Pour plus d’informations, voir notre période de support technique. Rechercher les versions prises en charge here.

Internationalisez vos composants et boîtes de dialogue afin que leurs chaînes d’interface utilisateur puissent être présentées dans différentes langues. Les composants conçus pour l’internationalisation permettent d’externaliser, de traduire et d’importer les chaînes de l’interface utilisateur dans le référentiel. Au moment de l’exécution, les préférences linguistiques de l’utilisateur ou les paramètres régionaux de la page déterminent la langue affichée dans l’interface utilisateur.

chlimage_1-9

Procédez comme suit pour internationaliser vos composants et fournir l’interface utilisateur dans différentes langues :

  1. Mettez en oeuvre vos composants à l’aide du code qui internationalise les chaînes. Votre code identifie les chaînes à traduire et sélectionne la langue à présenter au moment de l’exécution.

  2. Création de dictionnaires et add les chaînes anglaises à traduire.

  3. Exporter le dictionnaire au format XLIFF, traduire les chaînes, puis import les fichiers XLIFF dans AEM. Vous pouvez également ajouter manuellement des traductions au dictionnaire.

  4. Inclure le dictionnaire dans le processus de gestion des versions de votre application.

NOTE
Les méthodes décrites ici pour internationaliser des composants sont destinées à traduire des chaînes statiques. Si les chaînes d’un composant sont susceptibles de changer, vous devriez utiliser les workflows de traduction traditionnels. Par exemple, lorsque les auteurs peuvent modifier une chaîne de l’interface utilisateur à l’aide de propriétés dans la boîte de dialogue Modifier d’un composant, vous ne devez pas utiliser de dictionnaire de langue pour internationaliser la chaîne.

Dictionnaires de langues language-dictionaries

La structure d’internationalisation d’AEM utilise des dictionnaires dans le référentiel pour stocker les chaînes en anglais et leurs traductions dans d’autres langues. La structure utilise l’anglais comme langue par défaut. Les chaînes sont identifiées à l’aide de leur version anglaise. En règle générale, les structures d’internationalisation utilisent des ID alphanumériques pour les chaînes de l’IU. L’utilisation de la version anglaise de la chaîne comme identifiant présente plusieurs avantages :

  • Le code est facile à lire.
  • La langue par défaut est toujours disponible.

Les chaînes localisées peuvent être stockées dans plusieurs dictionnaires du référentiel. Les dictionnaires système d’AEM se trouvent sous le nœud /libs. Vous pouvez créer des dictionnaires pour vos composants sous le nœud /apps. Le framework d’internationalisation d’AEM combine les dictionnaires et les rend disponibles dans Sling sous la forme d’un seul objet ResourceBundle. Lorsque les composants sont rendus, ils récupèrent les chaînes traduites à partir du lot de ressources. Les dictionnaires combinés sont également déployés sur le serveur web au format JSON afin de fournir les chaînes traduites au code JavaScript dans les pages web.

De plus, l’outil de traduction vous permet de gérer tous les dictionnaires à partir d’un emplacement central.

chlimage_1-10

NOTE
Ne modifiez pas les dictionnaires système d’AEM qui se trouvent sous le nœud /libs.

Remplacement de chaînes dans les dictionnaires système overlaying-strings-in-system-dictionaries

Les chaînes figurant dans les dictionnaires sous le nœud /apps remplacent les chaînes en double dans les dictionnaires qui se trouvent sous le nœud /libs. Si vos composants utilisent des chaînes incluses dans les dictionnaires système AEM, dupliquez la chaîne dans votre propre dictionnaire. Tous les composants utiliseront les chaînes de votre dictionnaire.

Notez que vous ne pouvez pas prédire quelle traduction est utilisée lorsque des chaînes sont dupliquées dans les dictionnaires qui se trouvent tous sous le nœud /apps.

recommendation-more-help
2315f3f5-cb4a-4530-9999-30c8319c520e