Avoir un site multi-lingue

Contributeurs

Statut du tutoriel : 

À jour

Catégorie du tutoriel : 

Niveau du tutoriel : 

Modules utilisés : 

Il existe plusieurs approches pour l'internationalisation dans Drupal :

  • La traduction de l'interface : avec le module "Locale"
  • La traduction du contenu :
    • Avec "Content translation" : vous pouvez choisir d'activer les traductions par type de contenu, cette approche dupplique les noeuds, exemple : un article en anglais dont l'url est node/1, si vous le traduisez, la traduction sera accessible avec l'url node/2
    • Avec "Entity translation" (non disponible sur assos) : vous pouvez choisir d'activer les traductions par champs, cette approche ne dupplique pas les noeuds
  • La traduction de ce qui est ni du contenu ni de l'interface : avec le module "Internationalization" et ses modules complémentaires.

Ce tutoriel est très bref car l'internationalisation constitue un vaste sujet. Pour plus de précisions, lisez la documentation sur Drupal.org (ici) et/ou demander conseil au club Drupal dès le début de la construction de votre site.

 

  • Activez les modules utilisés plus les modules qui vous seront nécessaires, par exemple si vous voulez un forum multilingue, activez "Multilingual forum".
  • Dans Menu d'administration : configuration > régionalisation et langues > langues :
    • Choisissez les langues que vous souhaitez activer. Si la langue que vous désirez n’apparaît pas, allez dans Menu d’adiminstration : configuration > régionalisation et langues > ajouter une langue et sélectionnez la langue désirée.
  • Dans Menu d'administration : configuration > régionalisation et langues > langues. Allez dans l’onglet Détection et sélection :
    • Activez : Session, Utilisateur et Navigateur
  • Dans Menu d'administration : Structure > blocs : Choisissez où vous souhaitez mettre le bloc "Sélecteur de langue" permettant à l'utilisateur de choisir sa langue
  • Il faut traduire ce que vous souhaitez traduire :
    • Menus (nécessite "Menu translation") : pour chaque menu, il faut choisir s'il doit utiliser la traduction ou non et traduire chaque lien. Pour cela cliquez sur modifier le menu et choisir d'activer la gestion des langues. Ensuite cliquez sur modifier pour le lien que vous voulez traduire. Cliquez sur l'onglet traduire, ajoutez une traduction pour une langue. Enfin, cliquez sur Enregistrer. Cela va créer un deuxième lien, et selon la langue utilisée Drupal choisira lequel faire apparaître.
    • Contenu : il faut activer une option sur chaque type de contenu. Allez dans Menu d’administration : Structure Type de contenu. Cliquez sur modifier pour le type de contenu pour lequel vous désirez activer la traduction. Ensuite, dans le sous menu Options de publication, activez la gestion multilingue. L’option Activé ne fait qu’ajouter un menu déroulant au type de contenu vous permettant de choisir la langue du contenu. Le contenu ne sera disponible que dans la langue choisie. L’option Activé, avec traductions ajoute ce menu déroulant et un onglet traduction qui apparaîtera à côté de l’onglet modifier une fois le contenu sauvegardé.
  • Le travail de traduction étant souvent long, ne traduisez que ce qui est vraiment nécessaire, pas la peine de traduire l'interface d'administration ou certaines parties du site, si vous savez qu'elles ne sont réservées qu'à des personnes parlant la même langue.

Drupalfacile : Episode 35 - Réaliser un site multilingue sous Drupal 7 (première partie)

Drupalfacile : Episode 35 - Réaliser un site multilingue sous Drupal 7 (deuxième partie)