Attention : vous consultez actuellement la documentation dédiée aux versions 1.x de Moodle. La documentation pour les versions 2.x de Moodle est consultable ici : Contenus multilingues, celle pour les versions 3.x de Moodle est consultable ici : Contenus multilingues et celle pour Moodle 4.x est consultable là : Contenus multilingues.

Contenus multilingues

De MoodleDocs
Révision datée du 19 janvier 2007 à 19:10 par Nicolas Martignoni (discussion | contributions) (Contenu multilingue déplacé vers Contenus multilingues)
Aller à :navigation, rechercher

Remarque : la traduction de cet article n'est pas terminée. N'hésitez pas à traduire tout ou partie de cette page ou à la compléter. Vous pouvez aussi utiliser la page de discussion pour vos recommandations et suggestions d'améliorations.


Moodle permet de faire apparaitre différentes ressources en fonction du langage des utilisateurs. Il existe un filtre nommé Contenus multilingues (voir Filtres (administrateur)) qui devrait être activé. Cette page détaille plusieurs façons d'afficher des ressources à l'utilisateur en fonction de son langage.

Présentation du multi langage

Voir aussi : Filtres_(administrateur)#Contenus_multilingues

Le filtre Contenus multilingues permet à des ressources d'être crées en plusieurs langues. Quand il est activé, il cherche des balises <span lang="xx" class="multilang"> qui indiquent qu'un texte contient des langages multiples. Ensuite, il sélectionne et utilise le meilleur langage pour l'utilisateur. Le langage d'une ressource changera si l'utilisateur change son langage préféré.

La syntaxe multilangue change avec Moodle 1.8. <lang> n'est plus supporté. Il est nécessaire d'ajouter class="multilang" dans chaque balise <span> d'un bloc multilangue. La nouvelle syntaxe est compatible avec les anciens plugins, ce qui signifie qu'elle peut être utilisée avec d'anciennes versions de Moodle.

Comment l'utiliser

Pour utiliser cette fonctionnalité, vous devez d'abord créer votre contenu dans plusieurs langues (dans la même ressource). Ensuite, encadrez le bloc de chaque langue (bloc multilangue) par les balises suivantes :

      <span lang="XX" class="multilang">votre contenu ici</span>
      <span lang="YY" class="multilang">votre contenu dans une autre langue ici</span>

Il est nécessaire d'être en Mode code HTML (appuyez [<>] dans l'éditeur HTML), lorsque vous saisissez ces balises, pour qu'elles fonctionnent. Seuls les espaces, tabulations et retours à la ligne peuvent être utilisés entre les différents langages d'un bloc multilangue. Notez que class="multilang" n'est pas nécessaire avant Moodle 1.8.

Le code suivant

      <lang="XX">votre contenu ici</lang>
      <lang="YY">votre contenu dans une autre langue ici</lang>

ne fonctionne PAS.

L'ancien balisage HTML

      <lang lang="XX">votre contenu ici</lang>
      <lang lang="YY">votre contenu dans une autre langue ici</lang>

      <span lang="XX">votre contenu ici</span>
      <span lang="YY">votre contenu dans une autre langue ici</span>

ne fonctionnera pas avec 1.8 et ultérieur. En 1.8 l'attribut lang sans class="multilang" peut être utilisé pour marquer le langage du texte - voir http://www.w3.org/TR/html4/struct/dirlang.html

Comment cela fonctionne en interne

  1. Le filtre cherche d'abord les blocs multilangue dans le texte
  2. pour chaque bloc multilangue :
    1. s'il y a des textes dans la langue active, les affiche
    2. sinon, s'il y a des textes dans la langue parente de la langue active, les affiche
    3. sinon, affiche la première langue trouvée dans le texte
  3. les textes en dehors des blocs multilangue sont toujours affichés

Résumé de cours et balise de titre

Pour pouvoir changer également les titres et résumés des ressources, vous devez choisir Filtrer toutes les chaines dans les choix d'administration.

 <span lang="en" class="multilang">Matematically</span> <span lang="sv" class="multilang">Matematiskt (svenska)</span>

would function as English or Swedish title.

Il semble que cela ne fonctionne pas correctement pour les titres de cours (qu'ils soient longs ou courts), ni pour les catégories de cours...

Dans le résumé du cours :

<span lang="en" class="multilang">Growth is often a major concern in planning society.
 How can one avoid superficial conclusions? <br>
(Exists in Swedish too. Finns på svenska också)</span>
 <span lang="sv" class="multilang">Tillväxt är ofta använt i samhällsdebatten. 
Hur kan man undvika ytliga slutsatser? 
 (Finns på engelska också. Exists in English too.)
<br /></span> 

Can show in the chosen language (and point out that the other language is there). Notez que class="multilang" n'est pas nécessaire avant Moodle 1.8.

Traductions avec balises

If I were to want to translate a word or phrase to a chosen language in an English text:

If I want to include an explanation <span lang="en"> </span>
 <span lang="sv" class="multilang">(sv: förklaring)</span> in a running text can I do it?
<br />
<br /><span lang="en" class="multilang>If I want to include an explanation in a running text
 can I do it? </span>
<span lang="sv" class="multilang>If I want to include an explanation (sv: förklaring) in a 
running text can I do it?</span>

would both work, but not:

If I want to include an explanation <span lang="en" class="multilang></span>
 <span lang="sv" class="multilang>(sv: förklaring)</span> in a running text can I do it?
<br />If I want to include an explanation <span lang="sv" class="multilang>(sv: förklaring)</span>
 in a running text can I do it?<br />

which would show the Swedish even if English was the chosen language. NOTE taht before 1.8 the "span lang=en" must contain something, at least a space.

Nouvelle syntaxe multilingue

Moodle1.8


  • <span lang="xx"> et <lang> ne devraient plus être utilisés
  • le contenu existant peut être mis à jour en utilisant le script admin/multilangupgrade.php, il y a un lien sur la page de notification administrateur si la mise à jour est requise
  • le filtre multilangue peut être configuré pour utiliser uniquement l'ancienne syntaxe - voir Multi-Language Content Settings; ce paramètre pourra être supprimé en 1.9
  • new syntax is forced during new installation in 1.8, for upgraded sites the new syntax is enabled after the Multilang upgrade

Problèmes communs

  • Multilang filter is not enabled - go to filter settings and enable it
  • Filter all strings not enabled on sites that need multilang in titles, navigation, headings, etc.
  • extra characters between language span tags - editor might add <br /> or other tags, please review the html in source view
  • extra spaces in language span tag

Voir aussi

Filtres (administrateur)

Discussion http://moodle.org/mod/forum/discuss.php?d=51603 (en anglais)