Changer la langue du FO
La langue de votre site a été mise en place lors de l’installation Magento.
Si vous désirez la modifier, il faut vous rendre dans la configuration suivante : Stores > Settings > Configuration
Mettez la langue que vous souhaitez, ici nous avons mis « Français ».
Si vous regardez attentivement le code HTML du select de la langue, on remarque que la « value » est « fr_FR »
Voici la correspondance entre chaque langue et son code :
af_ZA => afrikaans (Afrique du Sud) sq_AL => albanais (Albanie) de_DE => allemand (Allemagne) de_AT => allemand (Autriche) de_CH => allemand (Suisse) en_AU => anglais (Australie) en_CA => anglais (Canada) en_IE => anglais (Irlande) en_NZ => anglais (Nouvelle-Zélande) en_GB => anglais (Royaume-Uni) en_US => anglais (États-Unis) ar_DZ => arabe (Algérie) ar_SA => arabe (Arabie saoudite) ar_KW => arabe (Koweït) ar_MA => arabe (Maroc) ar_EG => arabe (Égypte) az_Latn_AZ => azéri (Azerbaïdjan) eu_ES => basque (Espagne) bn_BD => bengali (Bangladesh) be_BY => biélorusse (Biélorussie) bs_Latn_BA => bosniaque (Bosnie-Herzégovine) bg_BG => bulgare (Bulgarie) ca_ES => catalan (Espagne) zh_Hans_CN => chinois (Chine) zh_Hant_HK => chinois (R.A.S. chinoise de Hong Kong) zh_Hant_TW => chinois (Taïwan) ko_KR => coréen (Corée du Sud) hr_HR => croate (Croatie) da_DK => danois (Danemark) es_AR => espagnol (Argentine) es_CL => espagnol (Chili) es_CO => espagnol (Colombie) es_CR => espagnol (Costa Rica) es_ES => espagnol (Espagne) es_MX => espagnol (Mexique) es_PA => espagnol (Panama) es_PE => espagnol (Pérou) es_VE => espagnol (Venezuela) et_EE => estonien (Estonie) fil_PH => filipino (Philippines) fi_FI => finnois (Finlande) fr_CA => français (Canada) fr_FR" => français (France) gl_ES => galicien (Espagne) cy_GB => gallois (Royaume-Uni) el_GR => grec (Grèce) gu_IN => gujarati (Inde) ka_GE => géorgien (Géorgie) hi_IN => hindi (Inde) hu_HU => hongrois (Hongrie) he_IL => hébreu (Israël) id_ID => indonésien (Indonésie) is_IS => islandais (Islande) it_IT => italien (Italie) it_CH => italien (Suisse) ja_JP => japonais (Japon) km_KH => khmer (Cambodge) lo_LA => lao (Laos) lv_LV => letton (Lettonie) lt_LT => lituanien (Lituanie) mk_MK => macédonien (Macédoine) ms_Latn_MY => malais (Malaisie) mn_Cyrl_MN => mongol (Mongolie) nb_NO => norvégien bokmål (Norvège) nn_NO => norvégien nynorsk (Norvège) nl_NL => néerlandais (Pays-Bas) fa_IR => persan (Iran) pl_PL => polonais (Pologne) pt_BR => portugais (Brésil) pt_PT => portugais (Portugal) ro_RO => roumain (Roumanie) ru_RU => russe (Russie) sr_Cyrl_RS => serbe (Serbie) sk_SK => slovaque (Slovaquie) sl_SI => slovène (Slovénie) sv_SE => suédois (Suède) sw_KE => swahili (Kenya) cs_CZ => tchèque (République tchèque) th_TH => thaï (Thaïlande) tr_TR => turc (Turquie) uk_UA => ukrainien (Ukraine) vi_VN => vietnamien (Vietnam)
Nous verrons dans le prochain chapitre comment se comporte la configuration du BO Magento.
Pour le moment choisissez juste l’option : « Français » et sauvegardez (Si votre site n’est pas déjà en français)
Changer la langue du BO
Avant de procéder à la mise en place du fichier de traduction, je vais vous expliquer où modifier la langue du BO Magento.
Rendez-vous dans System > Permissions > Users, puis cliquez sur l’utilisateur désiré.
Vous devez modifier la valeur Interface Locale :
Après modification, il se peut que votre backoffice soit toujours en anglais.
Ceci est du au fait que les fichiers de traductions natifs de Magento ne sont pas présent. Du coup il garde la valeur saisie dans le code (en anglais).
Par défaut, on saisira toujours les textes en anglais, ce sont les fichiers de traductions qui viendront les mettre en français (et non l’inverse)
Création du fichier de traduction
Nous y sommes ! Créez le fichier suivant :
app/code/Maxime/Jobs/i18n/fr_FR.csv
Notez que « fr_FR » correspond au code de la langue souhaitée.
Les traductions sont sensibles à la casse, et fonctionnent aussi bien pour la partie admin que la partie front.
Pour ma part j’ai mis le contenu suivant :
"We are hiring","Nous recrutons" "Department","Département" "Departments","Départements" "Department : ","Département : " "New Department","Nouveau Département" "Department Name","Nom du Département" "Department Description","Description du Département" "Save and Continue Edit","Sauvegarder et continuer l'édition" "Save Department","Sauvegarder le Département" "General Information","Informations générales" "Add New Department","Ajouter un départment" "Department saved","Département enregistré" "Department deleted","Département supprimé" "Name","Nom" "A total of %1 record(s) have been deleted.","%1 entrée(s) ont été supprimée(s)" "Job","Offre d'emploi" "Jobs","Offres d'emploi" "New Job","Nouvelle Offre" "Save and Continue Edit","Sauvegarder et continuer l'édition" "Save Job","Sauvegarder l'offre" "General Information","Informations générales" "Add New job","Ajouter une offre" "Job saved","Offre d'emploi enregistrée" "Job deleted","Offre d'emploi supprimée" "Title","Titre" "Type","Type" "Location","Localisation" "Date","Date" "Status","Statut" "Enabled","Activé" "Disabled","Désactivé"
Comment ça marche ?
Si vous regardez attentivement ce qu’on a mis en place durant les chapitres précédents, vous remarquerez que nous avons défini ce type de balise dans les XML :
translate="true"
Et dans les classes et les templates nous avons des appels à la méthode :
__('MY TEXT TO TRANSLATE')
Rendu en front et en BO
Si vous allez dans le BO vous remarquerez que notre module est traduit :
Si vous cliquez sur un lien dans le menu vous remarquerez que les textes que nous avons mis dans le fichier de traduction sont bien en français dans notre grid.
Traduisez uniquement les chaînes de caractères déclarées dans le module, les textes générés par Magento doivent être traduits par Magento. Plus globalement, les traductions concerne le module, il ne font donc pas traduire les textes d’autres modules (Ca fonctionne mais cela n’a pas d’intérêt).
Et la partie front :
Nos traductions sont désormais en place. Le prochain article sera un article « bonus », nous allons changer l’icône de notre module dans le BO.
Avouez que pour le moment elle n’est pas très sexy :
Ensuite, nous verrons comment ajouter notre propre configuration dans le BO Magento, et je vous expliquerai comment tout cela fonctionne !