Voilà, voilà... Fin de l'aventure...

 

Fermeture de kolossaldrupal.org dans...


Bonjour tout le monde,

Drupal évolue, les versions changent et Kolossaldrupal.org était essentiellement consacré à la version 6 de Drupal.

Autant dire que les infos présentées ici commencent à dater...

Faute de temps, je ne peux plus garder le site Kolossaldrupal à jour...

Je vous aurais bien proposé de reprendre le flambeau mais... c'est tellement simple de nos jours de se faire son propre site à soi...Pourquoi s'embêter alors ? :-)

Ce site restera donc en l'état, tel qu'il était en 2011...

Ah la la ! Cela ne nous rajeunit pas !

Manuel Vila - Avril 2016

Créer un site polyglotte

Référence en anglais sur drupal.org : http://drupal.org/node/275705
27 Juin 2008 - 14h12


Cet article est destiné aux webmasters qui veulent rendre leurs sites disponibles en plusieurs langues. Le but est de disposer du contenu du site en plusieurs langues et de laisser à l'internaute le choix de la langue affichée. Les menus doivent également être affichés dans la langue choisie par l'internaute. J'ai testé le résultat avec des contenus de type page et article. J'ignore ce qui se produira avec forum par exemple. J'espère que cet article vous aidera (c'est l'auteur de l'article en anglais qui parle. NdK).

Dans cet article, les chemins relatifs d'URL sont indiqués entre parenthèses. Si votre site est situé à l'adresse http://exemple.com/drupal et qu'il est indiqué admin/build/modules entre parenthèses, l'url complète sera http://exemple.com/drupal/admin/build/modules.

  1. Installez le module Internationalization.
  2. Allez dans la page des modules (admin/build/modules) et dans le groupe Core - Facultatif activez :
    • Locale
    • Content translation
  3. Dans le groupe Multilanguage - i18n, activez tous les modules disponibles. Les modules Poll et Profile sont cependant facultatifs, si vous ne voulez pas plusieurs langues pour eux.
  4. cliquez sur Enregistrer la configuration.

Vous avez maintenant besoin des fichiers de traductions pour toutes les langues de votre site (s'ils ne sont pas déjà installés).

Note de kolossaldrupal : la section suivante de l'article traite de l'ajout de langues au site, mais la procédure décrite dans l'article diffère de celle menée sur mon installation de Drupal. Je mentionne les deux.

Procédure d'ajout de langue selon l'article de drupal.org

Rendez-vous sur la page des traductions, téléchargez les traductions qui vous intéressent et décompressez-le dans le dossier Drupal (sur cette vidéo en anglais, à la minute 2:30, est montrée la bonne façon pour extraire les traductions; vous pouvez ignorer la suite de la vidéo car elle traite de l'installation de Drupal en d'autres langues que l'anglais, alors que cet article traite de l'ajout d'une langue après l'installation de Drupal).

Vous devez maintenant ajouter la nouvelle langue:

  • Allez dans la page des langues (admin/settings/language)
    • Ajoutez la langue que vous avez téléchargée et décompressée (admin/settings/language/add)
    • Cliquez sur l'onglet Configurer
    • Dans le groupe Négociation de la langue, sélectionnez Seulement le préfixe du chemin et cliquez sur Enregistrer les paramètres

Procédure suivie sur mon installation de Drupal

  • Allez dans le menu Administrer > Configuration du site > Toutes les langues > Ajouter une langue (admin/settings/language/add)
  • Dans la liste déroulante Nom de la langue, sélectionnez la langue qui vous intéresse
  • Cliquez sur le bouton Ajouter une langue, Drupal va importer la langue.
  • Cliquez sur l'onglet Configurer
  • Dans le groupe Négociation de la langue, sélectionnez Seulement le préfixe du chemin et cliquez sur Enregistrer les paramètres

La différence est que je n'ai eu nul besoin de télécharger, décompresser et copier les fichiers de traductions, Drupal s'en est chargé.

Reprise de la traduction de l'article de drupal.org

  • Assurez-vous que le français soit la langue par défaut
  • Rendez-vous dans Administrer > Construction du site > Blocs (admin/build/blocks)
  • Dans le groupe Désactivés, choisissez une région pour le Sélecteur de langue
  • Cliquez sur le bouton Enregistrer les blocs

Ok, vous voilà avec une bonne base de départ. En sélectionnant une langue via le Sélecteur de langue, vous verrez l'interface d'administration s'afficher dans cette langue. Si ce n'est pas le cas, assurez-vous d'abord que l'interface d'administration soit bien disponible dans la langue choisie. Pour cela, rendez-vous dans la page Administrer > Construction du site > Traduction de l'interface (admin/build/translate) et vérifiez le taux de traduction : il devrait être proche de 100%, sinon c'est qu'il reste du boulot !

Les étapes qui suivent expliquent comment rendre le contenu polyglotte.

  1. Rendez-vous sur la page Administrer > Gestion du contenu > Types de contenu (admin/content/types)
  2. Pour chaque type de contenu que vous voulez rendre polyglotte :
    • Cliquez sur son lien modifier
    • Dans le groupe Procédures de publication, dans la section Gestion multilingue cochez Activé, avec traductions
    • Cliquez sur le bouton Enregistrer le type de contenu.
  3. Maintenant, créez un contenu pour le type de contenu dont vous avez activé le support multi-langue (par exemple, page) (node/add/page)
  4. Dans le champ Langue, sélectionnez Français
  5. Enregistrez la page
  6. Cliquez sur le lien Traduire
  7. Cliquez sur le lien Ajouter une traduction pour la langue que vous souhaitez
  8. Traduisez vote contenu, le champ Langue doit afficher la langue que vous venez de sélectionner et doit être grisé
  9. Enregistrez le contenu

Maintenant, via le sélecteur de langue, vous pouvez afficher le contenu dans l'une ou l'autre des traductions.

Si vous voulez afficher des drapeaux à la place des noms des langues, vous devez utiliser le module Language icons (ou aussi Consistent Language Interface. NdK).

Pour que votre site soit entièrement traduit, vous devez aussi traduire les menus. Il y a deux façons de faire :

  1. Soit construire un menu pour chaque langue disponible
  2. Soit construire un menu avec des liens qui pointent vers chaque langue disponible. Ce que je veux dire c'est que s'il y a un node/1 dans votre page d'accueil écrit en français et un node/2 écrit en grec, vous devrez créer dans votre menu un lien vers node/1 nommé "Page d'accueil" et un lien vers node/2 nommé "Αρχική Σελίδα" (qui signifie "page d'accueil" en grec). Vous devrez faire cela pour chaque page traduite.

Essayez chacune de ces deux méthodes et choisissez celle qui vous convient le mieux.

Première option (plusieurs menus) :

  1. Créez un nouveau menu (admin/build/menu/add)
  2. Saisissez un Nom de menu, par exemple menu-fr (c'est un « nom machine »)
  3. Renseignez le Titre, la Description et enregistrez
  4. Ajoutez un élément de menu (admin/build/menu-customize/menu-menu-fr/add)
  5. Indiquez le chemin pour la page en français (node/1)
  6. Renseignez le Titre du lien dans le menu
  7. Il ne faut pas choisir une langue dans la liste déroulante Langue !
  8. Enregistrez
  9. Créez un deuxième menu pour la deuxième langue (admin/build/menu/add)
  10. Dans Nom de menu, indiquez un nom, par exemple menu-gr
  11. Renseignez le Titre, la Description et enregistrez
  12. Ajoutez un élément de menu (admin/build/menu-customize/menu-menu-gr/add)
  13. Indiquez le chemin pour la page en grec (node/2)
  14. Indiquez le nom grec pour le lien
  15. Il ne faut pas choisir une langue dans la liste déroulante Langue !
  16. Enregistrez
  17. Recommencez ces opérations pour construire les menus de toutes les langues disponibles

Maintenant que vous avez les menus, il faut les afficher.

  1. Rendez-vous dans la page d'administration des blocs (admin/build/block)
  2. Descendez dans le groupe Désactivé et sélectionnez une région pour vos menus
  3. Cliquez sur Enregistrer les blocs
  4. Pour votre menu en français, cliquez sur Configurer dans la colonne Opérations
  5. Dans Multilingual settings, sélectionnez Français comme langue et cliquez sur Enregistrer le bloc
  6. Recommencez cette opération pour les autres menus et sélectionnez les langues dans lesquelles ils doivent s'afficher

Deuxième méthode (un menu) :

  1. Créez un nouveau menu (admin/build/menu/add)
  2. Dans Nom de menu, indiquez un nom (par exemple, multi-menu)
  3. Renseignez le Titre, la Description et enregistrez
  4. Ajoutez un élément de menu (admin/build/menu-customize/menu-multi-menu/add)/li>
  5. Renseignez le Chemin pour le node en français (node/1)
  6. Renseignez le Titre du lien dans le menu
  7. Dans la liste déroulante Langue :, sélectionnez Français
  8. Enregistrez
  9. Ajoutez un autre élément de menu à ce même menu (admin/build/menu-customize/menu-multi-menu/add)
  10. Indiquez le chemin (node/2) et le nom
  11. Dans la liste déroulante Langue :, sélectionnez la langue, par exemple grec
  12. Enregistrez
  13. Recommencez pour les autres langues si node/1 est traduit en d'autres langues
  14. Recommencez ces opérations pour construire les liens de menus de toutes les pages de votre site qui ont des traductions

Maintenant, affichons le menu :

  1. Rendez-vous dans la page d'administration des blocs (admin/build/block)
  2. Descendez dans le groupe Désactivé et sélectionnez une région pour vos menus
  3. Cliquez sur Enregistrer les blocs

Terminé ! Si vous choisissez maintenant une langue dans le sélecteur de langues, vous devriez voir votre contenu traduit et le menu correspondant.