Étape 1 : installer et configurer les packs de langues

Installer les packs de langues :

Rendez-vous dans le panneau d'administration Magento.
Allez dans « Stores » -> « Configuration » -> « General » -> « Locale Options ».
Dans la section « Locale », sélectionnez la langue à ajouter et enregistrez les paramètres.
Répétez ce processus pour chaque langue que vous souhaitez prendre en charge.


Étape 2 : créer les traductions


Créer les traductions :

Magento vous permet de créer des traductions pour différentes parties de votre boutique, comme les libellés de boutons, les descriptions de produits, etc.
Créez des fichiers CSV pour chaque langue, par exemple en_US.csv pour l'anglais et fr_FR.csv pour le français.
Téléversez ces fichiers dans le répertoire app/i18n/[Vendor]/[theme]/i18n/, où [Vendor] est le fournisseur de votre thème et [theme] le nom de votre thème.


Étape 3 : configurer les stores et websites


Créer les websites :

Allez dans « Stores » -> « All Stores ».
Cliquez sur « Create Website » et nommez votre nouveau website, par exemple « English Website ».
Créez des websites pour chaque langue que vous prévoyez de prendre en charge.
Créer les stores :

Sous « All Stores », cliquez sur « Create Store ».
Sélectionnez le website créé et donnez un nom à votre store, par exemple « English Store ».
Répétez ce processus pour chaque langue en créant les stores correspondants.
Associer les langues :

Pour chaque store, rendez-vous dans « Stores » -> « Configuration ».
Dans la section « General » -> « Locale Options », sélectionnez la langue appropriée pour ce store.


Étape 4 : configurer votre serveur web (Nginx)


Configurer Nginx :

Si vous utilisez Nginx comme serveur web pour Magento 2, configurez des blocs server pour chaque website/langue.
Voici un exemple de configuration Nginx pour un website :

server {
    listen 80;
    server_name example.com;  # Remplacez par votre nom de domaine

    set $MAGE_RUN_TYPE website;
    set $MAGE_RUN_CODE en_website_code;  # Remplacez par le code de votre website

    location / {
        root /path/to/magento/root;
        index index.php;
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;  # Chemin vers votre socket PHP-FPM
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param MAGE_MODE $MAGE_MODE;
        fastcgi_param MAGE_RUN_TYPE $MAGE_RUN_TYPE;
        fastcgi_param MAGE_RUN_CODE $MAGE_RUN_CODE;
    }
}

Créez des blocs server distincts pour chaque website (store) et ajustez en conséquence le server_name, $MAGE_RUN_CODE et les autres paramètres.
Redémarrer Nginx :

Après avoir modifié la configuration Nginx, redémarrez Nginx pour appliquer les nouveaux paramètres :

sudo systemctl restart nginx

 

Étape 5 : tests


Tester :

Après avoir configuré Magento pour plusieurs langues, assurez-vous que toutes les pages, libellés et descriptions de produits s'affichent correctement dans la langue sélectionnée.
Testez la fonctionnalité du sélecteur de langue pour vous assurer que les clients peuvent basculer entre les langues sans difficulté.
Votre boutique Magento 2 est désormais prête à prendre en charge plusieurs langues, chaque langue disposant de ses propres configurations de website et de store. Les clients peuvent facilement changer de langue, et votre serveur web est configuré pour servir le contenu approprié en fonction de la langue sélectionnée.