Mécanisme de hiérarchie des traductions, par plus haute priorité
1- Base de donnée
Les traductions sont sauvegardées dans la table translation
Elles sont ajoutées automatiquement en utilisant la fonctionnalité « Inline translation » ou elles peuvent être ajoutées manuellement dans la table.
Magento va charger les traductions pour la locale courante
2- Thèmes
Les traductions sont situées dans le dossier app/design/i18n.
Magento va fusionner tous les fichiers de traductions trouvés dans le thème courant et ses thèmes parents pour la locale courante.
3- Dictionnaire de langues
Les traductions sont situées dans le dossier app/i18n/[Vendor_Name]/xx_yy.
Magento va fusionner tous les dictionnaires trouvés pour la locale courante.
4- Module
Les traductions sont situées dans le dossier app/code/[Vendor_Name]/[Module_Name]/i18n.
Initialisation
Magento\Framework\App\Area->_initTranslate()
Magento\Framework\App\Area->loadData()
Liste tous les modules.
Pour chaque module, si le fichier i18n/xx_YY.csv existe, il est ajouté à Magento\Framework\Translate::_data
Charge et fusionne les traductions de tous les dictionnaires par locale (en_US, en_CA, fr_FR, fr_CA etc…).
Si le dictionnaire est le même que la locale courante il est alors ajouté à \Magento\Framework\Translate::_data
Charge et fusionne les traductions de tous les thèmes.
Vérifie si le fichier i18n/xx_YY.csv existe et ajoute les données à \Magento\Framework\Translate::_data
Charge toutes les traductions de la locale courante
Laisser un commentaire