Salut,
Puisque Peggy demande quelques précisions, je suppose que c'est pas inutile de faire une petite explication. Parce que le principe des "modules" n'a effectivement rien d'évident.
-> La principale difficulté à laquelle on se retrouve lorsqu'on fait les squelettes d'un site multilingue, c'est la présence de "mots" qu'on a l'habitude d'ajouter "à la main" pour indiquer les principes de navigation dans le site. (Les autres éléments du multilinguisme reposent sur les automatismes fournis par SPIP: traduction des dates, traduction des formulaires...)
Par exemple, quand on fait ses squelettes, on y insÚre "à la main" des phrases explicatives, du genre: "Afficher le plan du site", "Derniers articles publiés", "Les brÚves", "Les articles de la même rubrique", "Articles du même auteur"... Parce que sinon, évidemment, on n'aurait que des listes d'articles sans que le visiteur sache à quoi cela correspond. Tant que le site est dans une seule langue, c'est facile.
Mais si le site est en plusieurs langues, on est coincé: il faudrait faire un squelette spécifique pour chaque langue, uniquement pour que "Les articles de la même rubrique", dans la partie en anglais, soit affiché "Latest articles of ze section". Idem pour les autres langues. C'est rapidement ingérable, et cela implique de faire des squelettes séparés alors que seuls de petits éléments textuels sont à modifier.
Donc SPIP propose un autre systÚme, basé sur des "modules" de traduction: plutot que d'insérer à la main dans différents squelettes les diverses traduction de la phrase "Les articles de la même rubrique", je décide que cette phrase porte le nom "articles_meme_rubrique". Dans mon squelette, à l'endroit où, habituellement, j'aurais insérée la phrase en toutes lettres, j'insÚre désormais:
<:articles_meme_rubrique:>
Et dans un fichier spécifique, j'indique la signification de cette chaîne en français, dans un autre fichier, j'indique sa signification en anglais, etc. Idéalement, in fine, SPIP propose une interface specifique qui permet aux participants du site (admins parlant plusieurs langues) de réaliser les différentes traductions; pour l'heure, il est nécessaire de passer par la création de fichiers PHP dans un format trÚs spécifique, ça n'est pas ultra-simple; à terme, l'idée est qu'il ne sera pas nécessaire d'aller bidouiller des fichiers, mais d'utiliser une interface graphique dans SPIP.
-> Dans un deuxiÚme temps, ce principe de modules de traduction, qui permettent de faire un squelette unique qui s'affiche correctement dans toutes les langues, bute encore sur quelques difficultés:
A. Si je dois réaliser l'interface d'un site multilingue allemand, anglais, espagnol, français, italien, je vais perdre beaucoup de temps à créer le module en français (voire commencer celui en anglais) et à attendre que des bonnes volontés effectuent les traductions pour l'espagnol, l'italien et l'allemand. Et si un jour le site ajoute des articles en arabe, il y a encore du boulot en plus.
B. Il y a le problÚme des squelettes qu'on s'échange (sans parler des squelettes fournis directement avec SPIP). Il serait particuliÚrement pratique que ces squelettes ne soient plus liés à une seule langue. De cette façon, si un graphiste allemand fournit des jolis squelettes, l'idéal est que je puisse directement les récupérer sur mon site en arabe et qu'ils fonctionnent immédiatement sans que j'ai à traduire tous les éléments de texte. Ce qui nous ramÚne au principe des modules: il faudrait que le graphisme allemand fournisse les fichiers de traduction des élements textuels de ses squelettes. Evidemment, on peut attendre longtemps...
La solution consiste, du cÎté de SPIP, à fournir à tout le monde un module "standard" de chaînes utilisées habituellement sur les sites Web. Et que ce module soit traduit, dans le plus grand nombre de langues possible, par les traducteurs de SPIP. De cette façon, le webmestre n'a pas à savoir comment on dit "Articles de la même rubrique" en arabe et en italien: SPIP lui fournit déjà les traductions.
Pour reprendre les deux difficultés A et B, cela se résoud ainsi:
A. Pour le site de mon association internationale, je me contente d'utiliser les phrases déjà traduites d'origine avec SPIP. Là où j'ai besoin d'afficher "Articles de la même rubrique", j'insÚre dans le squelette: <:articles_meme_rubrique:>. DÚs qu'on active les parties du site dans n'importe quelle langue, cette phrase s'affiche avec la bonne traduction, qui a déjà été réalisée, en amont, par les traducteurs de SPIP. Je gagne un temps fou, et je ne suis pas dépendant d'un gentil contributeur allemand qui, malgré sa bonne volonté, fait encore plus de fautes d'orthographe que moi.
B. Je distribue un squelette que les gens peuvent récupérer sur leur propre site. Là encore, je n'ai plus besoin de fournir des traductions, et/ou eux n'ont pas besoin de modifier les squelettes dans leur propre langue. J'insÚre <:articles_meme_rubrique:> dans mon squelette, que j'ai personnellement l'habitude d'utiliser sur un site en français; le webmeste qui installe mon squelette sur son site en serbo-croate, sans aucune modification, il aura les éléments de navigation de son site public directement affichés en serbo-croate (parce que le travail de traduction a été réalisé en amont par les équipes de traduction de SPIP).
Voilà ...
Amicalement,
ARNO*