Mise à disposition d’un plugin multilingue : Babel v. 0.1

Nous avons mis sur notre page GitHub la version 0.1 d’un nouveau plugin, Babel, conçu et développé par Vincent Buard (Numerizen) pour le compte de la plateforme EMAN (ITEM).

Ce plugin veut proposer une interface et une gestion des contenus multilingues pour Omeka Classic. Il en est encore à sa version prototype qui gère, entre autres, la saisie et l’affichage de contenus saisis dans plusieurs langues.

Fonctionnement du plugin

Ce plugin fonctionne avec un autre plugin Switch Language, version 1.1 par Anne Garcia-Fernandez (CNRS) and Yifan Zhang (ENSIIE). L’administrateur du site doit configurer les langues disponibles sur la page de configuration de SwitchLanguage : http://votredomaine/admin/plugins/config?name=SwitchLanguage.

Il est vivement conseillé de choisir l’option « Flags Only » pour la fonction « Display Type », sous peine de voir les écrans de saisie en administration ne pas fonctionner correctement.

Une fois le plugin Switch Language paramétré, vous pouvez activer le plugin Babel. Il affiche en haut à droite les langues disponibles choisies dans l’interface Switch Language. Où que vous soyez sur le site, quand vous cliquez sur une icône, le site charge l’interface et les contenus dans celle-ci – si ceux-ci ont été saisis dans la langue cible.

Mais le développement n’est pas fini. À chaque changement de langue, Babel ne charge que l’interface standard proposée par Omeka dans cette langue. Les personnalisations des menus ne sont pas traduites. Ainsi, « parcourir les collections » sera bien traduit, au contraire d’un item du menu que vous avez personnalisé. Si vous avez un menu très personnalisé, il y aura peu de changement sur la page d’accueil ou sur certaines pages présentant les contenus, en fonction du thème choisi.

Ce module propose déjà une interface multilingue pour :

  • les items
  • les collections
  • les fichiers
  • les « Simple Pages »

Les éléments suivant ne sont pas traduits (pour l’instant) :

  • les menus personnalisés du site
  • les informations du site (page Paramètres)
  • les expositions (ExhibitsBuilder)
  • les personnalisations effectuées avec UiTemplates

Gestion des données

Sur chaque formulaire de gestion de contenu (Item, Collection, File, Simple page), les champs de saisie n’ont plus l’espace habituel de saisie de texte car ils sont proposés avec une entrée par langue activée dans SwitchLanguage. Lorsque le champ a plusieurs entrées dans une langue, il y en aura autant pour les autres langues.

Il est possible d’activer l’éditeur Wysiwyg pour chaque champ (« Utiliser le HTML »). Toutefois, les champs ajoutés grâce au bouton « Ajouter une entrée » demandent que le contenu soit sauvegardé une fois dans la langue pivot avant que l’éditeur Wysiwyg soit disponible.

À l’affichage, le module détecte automatiquement la langue demandée (la langue courante) et affiche pour chaque champ la traduction correspondante si elle existe. Par contre si la traduction n’existe pas, nous avons choisi de faire afficher la valeur du champ dans la langue par défaut. La langue par défaut est définie dans le plugin SwitchLanguage.

Le module n’est pas encore fini ; les retours de test sont les bienvenus.

Vincent Buard

Babel : https://github.com/ENS-ITEM/Babel