Introduction
Même si le multilinguisme est nativement intégré dans spip, réaliser un site multilingue n’est pas toujours évident. Ce plugin a pour objectif de faciliter cette tâche en permettant de mettre en place en quelques clics un site multilingue avec une langue par secteur. [1]
Principe
Le plugin rassemble plusieurs plugins déjà existants et apporte quelques modifications aux squelettes.
Installation
Le plugin s’installe comme n’importe quel plugin.
Il nécessite toutefois les plugins suivants :
- Traduction entre rubriques
- Langue préférée par l’internaute
- Traductions de rubriques autrement
- Traductions d’articles autrement
Sous Spip >= 3 l’installation de ces plugins requis se fait automatiquement en installant le présent plugin.
Sous Spip 2 ou 2.1 il est recommandé d’installer auparavant le plugin Step pour installer « Site multilingue facile » et de forcer ainsi l’installation automatique de tous les plugins nécessaires.
Le plugin modifie également quelques squelettes (sommaire.html, rubrique.html et article.html) et quelques noisettes.
Une fois installés les plugins nécessaires, il vous suffit de déterminer les langues du site dans « Configuration »->« Mulilinguisme »->« Gestion des langues » et voilà votre site est multilingue ; vous pouvez maintenant commencer à rédiger vos contenus.
Squelettes
Le plugin surcharge les squelettes sommaire.html, article.html et rubrique.html afin de les adapter à la structure « une langue par secteur »[1].
Évidemment vous pouvez les surcharger à votre tour en copiant les fichier d’origine depuis le dossier squelettes-dist dans votre dossier squelettes, mais vous perdriez les adaptations spécifiques à la structure « langue par secteur »[1]. Vous pouvez également réutiliser les adaptations proposé par ce plugin.
Modifications des squelettes proposés par le plugin
Si vous voulez maintenir la redirection automatique vers le bon secteur de langue [1], veuillez ne pas surcharger le fichier sommaire.html, car il contient la balise #LANGUE_PREFEREE_SECTEUR_REDIRECTION
du Plugin « Langue préférée par l’internaute » provoquant la redirection vers le secteur de la bonne langue.
Concernant les squelettes article.html et rubrique.html, si vous souhaitez les modifier, copiez les fichier correspondant à votre version dans votre dossier squelettes, puis renommez-le correctement :
Pour la version spip 2 et 2.1 copiez les fichiers « rubrique_spip2.html » et « article_spip2.html » dans votre dossier squelettes, puis renommez les en leur enlevant « _spip2 ».
Pour la version spip 3 et plus procédez de la même manière en prenant les fichiers contenant « _spip3 ».
Le logo
Les Balises #LOGO_objet
comme par exemple #LOGO_ARTICLE
permettent maintenant de chercher le logo de l’objet d’origine si l’objet traduit ne dispose pas de logo. Donc si l’article 2, traduction de l’article 1 n’ait pas de logo attaché, la Balise #LOGO_ARTICLE
affichera le logo de l’article 1.
Cette fonctionnalité peut-être désactivé dans le panneau de configuration du plugin.
Le menu de langue
vous pouvez utiliser la noisette
<INCLURE{fond=inclure/menu_langues,env}/>
qui est inclue d’office si vous utilisez ce plugin dans Spip3 et +.
Pour Spip2 et 2.1 vous devriez copier le fichier inc-entete.html dans votre dossier squelettes et remplacer
#MENU_LANG
par <INCLURE{fond=inclure/menu_langues,env}/>
Le menu de navigation
Si vous utilisez les squelettes par défaut ou ceux de Zspip, ce plugin inclut directement un menu de rubriques adapté à la structure langue par secteur [1].
Sinon vous pouvez insérer la noisette <INCLURE{fond=inclure/nav,env}/>
à l’endroit ou vous voulez faire apparaitre le menu de navigation
Le plugin est compatible avec Zspip
Vos commentaires
# Le 16 février 2017 à 14:02, par dominique Robin
En réponse à : Site multilingue facile
bonjour, je teste le plugin avec 3 langues. Au niveau de la rubrique c’est bon mais au niveau de l’article je n’arrive pas à sélectionner une nouvelle langue que je dois modifier directement dans la table. Mon plus gros problème est que les articles traduits apparaissent dans le menu sur l’interface publique. J’ai donc 4 liens vers les articles traduits. Par contre j’affiche correctement l’article traduit en anglais et en français à l’aide la liste des langues.
Mon site teste est : http://preuilly.preuillysurclaise.fr/?foret-de-tours-preuilly-detente&lang=fr
J’ai peut être pas tout compris au niveau du paramétrage des différents plugins utilisés. Merci de votre aide.
# Le 16 février 2017 à 14:12, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour
Je ne comprends pas. Pourqoui changer directement dans la table ? Ou est-ce que tu n’arrives pas à sélectionner une nouvelle langue ? Screenshot ?
Peux-tu également mettre un screenshot ?
Rainer
# Le 19 février 2017 à 11:47, par dominique Robin
En réponse à : Site multilingue facile
bonjour, suite à ton message j’ai compris pourquoi j’avais plusieurs articles. Tout simplement du fait que je ne rattachais pas l’article traduit en anglais à la rubrique traduite en anglais. Si je n’arrivais pas à sélectionner une nouvelle langue c’est que je voulais modifier la langue après avoir créé un nouvelle traduction. Maintenant je crois avoir compris et cela fonctionne sur le site test. Fort de mon succès j’ai créé des traductions sur le site principal preuillysurclaise.fr et là j’ai un nouveau problème car avec le même paramétrage des plugins ma traduction est bien liée à la rubrique anglaise mais j’ai deux boutons qui s’affichent au lieu de la liste déroulante du choix de la langue. Pour le site principal j’utilise le squelette soyezcreateurs sur le test le squelette spip de base 3.11. Je vais tenter de trouver mon erreur Merci de ton aide si tu as le temps de m’aiguiller
# Le 20 février 2017 à 08:45, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour Dominique
Les squelettes de base de spip proposent un menu langue spécifique pour les articles dans le corps de l’article et un pour les autres page en haut de la page. Le présent plugin les fusionne.
Comme tu utilise un autre squelette, j’imgine que le menu traduction article réapparait, il suffit de l’enlever dans le squelette article.
Rainer
# Le 21 février 2017 à 12:31, par dominique Robin
En réponse à : Site multilingue facile
bonjour et merci, je vais suivre tes conseils car en effet il semble que les différents plugins installés se contraries.
Répondre à ce message
# Le 19 mars 2016 à 19:38, par Katja
En réponse à : Site multilingue facile
Bonjour Rainer,
Désolée pour ma réponse tardive mais j’ai un problème annexe qui m’a empêché de travailler sur le site (le disque dure du serveur est en train de lâcher... :-/ )
Je réinstallerait tout la semaine prochaine et repartirai de 0.
Merci pour tes réponses, je reviendrai t’embêter, où je l’espère te donner de bonnes nouvelles :D, dès que possible :)
Répondre à ce message
# Le 8 mars 2016 à 20:16, par Katja
En réponse à : Site multilingue facile
Merci pour ta réponse Rainer,
j’avais déjà essayé avec le $GLOBALS mais ça ne donnait rien (dans /config/mes_options.php)
et concernant l’astuce, j’ai copié-collé le code dans mes_options.php et là j’ai une page blanche x-/ si je mets ?/lang=en j’ai toutes ma page en en mais le retour en fr laisse page blanche...
Je n’ai auxune idée :’(
merci pour ton aide.
# Le 10 mars 2016 à 09:24, par Rainer Müller
En réponse à : Site multilingue facile
Les derniers essais ont été fait avec une structure de secteur par langue ? Sinon essaie le tout avec secteur par langue.
Dans la config du plugin tu peux changer ver un menu en drop down. Est -que cela fonctionne mieux ?
Sinon surcharge la noisette :http://zone.spip.org/trac/spip-zone/browser/_plugins_/paniers/trunk/inc/paniers.php
ligne 35
par
# Le 10 mars 2016 à 09:26, par Rainer Müller
En réponse à : Site multilingue facile
pardon, c’était le faux lien, voici le bon : http://zone.spip.org/trac/spip-zone/browser/_plugins_/multilingue/branches/0/inclure/menu_langues.htm
Répondre à ce message
# Le 7 mars 2016 à 19:47, par Katja
En réponse à : Site multilingue facile
Bonjour,
Je n’ai pas utilisé les secteurs par langue (en mettant en dure / ?lang=en les noisettes se traduisaient tout de même ainsi que les articles).
J’ai fais un test en créant les secteurs par lange (dossier racine en et fr) contenant les ss-rubriques et articles traduits et j’ai exactement le même problème.
le site de test peut-être visible ici :
test.sfv.leotxando.net
htpasswd : id : spip
mdp : SpiP0u
Merci pour ton aide !
# Le 8 mars 2016 à 08:40, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour,
ce que je vois tu as du écraser le fichier sommaire.html, qui normalement renvoie vers la rubrique du secteur correspondant à la langue par défaut, ou choisit par le visiteur. le sommaire n’ayant pas de langue il faut lui l’indiquer via la variable lang.
Tu pourrais mettre
dans ton fichier mes_options mais cela peut avoir dés effets non désires car no seulement il ajoute automatiquement la variable lang à l’url mais
Extraits de http://programmer.spip.net/Forcer-la-langue-selon-le-visiteur
dans ce même page sous « Autre utilisation du cookie » tu trouvera une astuce qui t’évitera d’utiliser le
Rainer
Répondre à ce message
# Le 5 mars 2016 à 13:44, par Katja
En réponse à : Site multilingue facile
Bonjour,
bravo pour ce plugin qui simplifie grandement les choses !
J’ai un soucis au niveau du menu_lang : ce dernier me force l’affichage en français systématiquement, malgré le fait que j’ai mis mon navigateur en anglais.
Par contre, si je mets / ?lang=en j’ai bien l’affichage du menu_lang qui me notifie que je suis en anglais, quand je clique sur français je reviens en fr mais l’inverse ne s’effectue pas :/
comment faire le basculement de langue ? je n’arrive pas à me « déboguer » :D
Merci !
Je suis sous spip 3.1.0 avec multilingue 1.0.6 stable.
# Le 7 mars 2016 à 08:36, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour,
est-ce que utilise tu des secteurs par langue ? Est-ce que tu as un exemple en-ligne ?
Répondre à ce message
# Le 13 février 2016 à 23:08, par davduf
En réponse à : Site multilingue facile
Bonjour à tous et merci aux dev !
Depuis le passage à SPIP 3.1, j’ai un pb...
Impossible de passer d’une langue à l’autre par le menu
Mon site est : http://www.davduf.net
Le lien qui est donné, par ex, pour passer à l ;’anglais est : http://www.davduf.net/spip.php?action=converser&hash=61ce3bd35953067339c63f1526d178297e568647&redirect=.%2F
J’ignore complètement à quoi il se rapporte...
Merci mille fois !
# Le 16 février 2016 à 10:28, par Rainer Müller
En réponse à : Site multilingue facile
Le menu de langue semble fonctionner parfaitement
Répondre à ce message
# Le 2 août 2013 à 16:12, par nik
En réponse à : Site multilingue facile
ce plugin est super mais il me fait planter le moteur de recherche en partie privée du site il me retourne une erreur SQL 1064
le probleme semble proveni de :
SELECT id_trad FROM spip_articles WHERE id_article=
# Le 20 août 2013 à 09:47, par Rainer Müller
En réponse à : Site multilingue facile
Je ne reproduis pas ce problème. Quelle version de spip, du plugin. Quelle moteur de recherche celui dans la barre coloré ?
As-tu fais des essais en désinstallant tous les autres plugins non nécessaires ?
# Le 2 juillet 2015 à 22:11, par victor
En réponse à : Site multilingue facile
dans multilingue_fonctions.php, en remplaçant :
AND $id_trad=sql_getfetsel('id_trad',$table,$_id_objet.'='.$id)
par :
AND $id_trad=sql_getfetsel('id_trad',$table,$_id_objet.'='.intval($id))
cette erreur a disparue.
# Le 3 juillet 2015 à 08:32, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour et merci pour ce d´pistage,
C’est bizarre que cette erreur apparaisse, vue que $id ne devrait jamais être vide, pourrais-tu me donner le contexte de cette erreur. Quelle version spip avec quelles plugins (version php).
Merci
Rainer
# Le 4 juillet 2015 à 00:57, par victor
En réponse à : Site multilingue facile
Bonjour Rainer,
Après enquête, l’erreur vient d’une utilisation certainement abusive de ma part de la balise #LOGO_ARTICLE_RUBRIQUE pour afficher de manière générique logo de l’article ou de la rubrique dans un entête de page.
Sur la page rubrique, le logo de la rubrique est bien trouvé mais l’erreur apparaît.. Il y a peut être alors, dans l’environnement de cette page, un id_rubrique mais pas de id_article.
Avec la modification, le logo est toujours bien affiché mais l’erreur disparaît. Ce n’est certainement pas une solution très propre mais peut être qu’elle servira malgré tout à d’autres..
Seule la fonction « traduction de logo » du plugin est utilisée.
Merci pour ce code très utile ! :)
victor
# Le 5 juillet 2015 à 09:25, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour Victor,
Merci pour tes retours. J’ai actualisé le code avec ta suggestion.
Répondre à ce message
# Le 25 novembre 2014 à 10:49, par Micha
En réponse à : Site multilingue facile
Bonjour, j’aimerais mettre le menu_langue en liste déroulante.
J’ai fait des modifications avec les select options... dans le inclure/menu_langues.html mais aucun changement.
Que devrais-je faire pour afficher une liste déroulante ?
Merci
# Le 25 novembre 2014 à 11:09, par Micha
En réponse à : Site multilingue facile
Apparemment mon deuxième message ne c’est pas envoyé.. J’ai trouver le fichier menu_langues_select.html donc pour la liste déroulante c’est bon, mais petite question.
Comment choisir le texte correspondant ? Car je préférerais juste EN et FR.. Surtout qu’il me met English et français, sans maj.. ça fait moyen ^^
Merci
# Le 25 novembre 2014 à 11:30, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour,
dans « formulaires/inc-options-langues_multi.html » il faut remplacer
[(#LANG|traduire_nom_langue)]
par#LANG
Rainer
Répondre à ce message
# Le 3 décembre 2013 à 17:21, par lio
En réponse à : Site multilingue facile
Bonjour et merci pour ce plugin formidable.
Auparavant, déjà utilisé avec succés en SPIP3, je me retrouve à l’utiliser avec ennuis sur un SPIP2.1 à jour…
En effet au niveau du menu de langues, le choix proposé dans les autres langues n’intègrent pas dans l’url les autres rubriques mais au contraire indique tout le temps : redirect=RUBRIQUEENCOURS
En effet ça indique en redirect que la rubrique en cours, mais non l’url appartenant aux langues.
Du coup ça ne fais rien (à part si je rajoute dans le couteau suisse forcer langue, et là ça me change au moins le menu du site)
Je ne sais pas si j’ai été assez clair… Vous me direz ;) Merci !
# Le 5 décembre 2013 à 17:00, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour,
est-ce que vous avez bien un structure avec secteur par langue et chaque rubrique est traduite ?
Pourriez vous me copier le lien que produit le menu ?
Cordialement
Rainer
# Le 20 mai 2014 à 15:39, par lio
En réponse à : Site multilingue facile
Avec beaucoup de retard, merci j’avais fait une erreur bête…
Répondre à ce message
# Le 1er mai 2014 à 16:03, par Clément
En réponse à : Site multilingue facile
Bonjour,
Je souhaite traduire un site sous spip et j’ai quelques problèmes ! J’ai téléchargé ce plugin et inclus la barre qui permet de choisir la langue ... puis j’ai traduit un article et une rubrique, mais quand je vais dans cette rubrique en version FR et que je clique sur la traduction, ça m’affiche seulement « lang=nl » dans l’url, mais la traduction n’apparait pas ! J’ai loupé quelque chose ? :)
Merci beaucoup !
# Le 1er mai 2014 à 19:42, par Rainer Müller
En réponse à : Site multilingue facile
Est-ce que vous avez créé un site avec une langue par secteur ? Pourriez vouz mettre le lien de traduction ?
# Le 6 mai 2014 à 18:41, par Clément
En réponse à : Site multilingue facile
Bonjour,
Une langue par secteur ? Je ne sais même pas ce que c’est :/
Voilà le lien : http://www.parapente-puy-mary.com/
Le 3e
Mais quand on clique dans la barre de langue (que j’ai aussi cachée, elle est en bas du header, c’est la classe « traductions »), l’article reste en Français
Merci pour votre réponse, en tout cas !
# Le 7 mai 2014 à 09:08, par Rainer Müller
En réponse à : Site multilingue facile
Bonjour,
Pour la langue par secteur regardez ici.
Il me semble que vous avez surchargez les squelettes rubriques, articles et sommaires. Donc le bon fonctionnement du menu ne peut pas être garantie. Veuillez lire ci-haut sous squelettes par rapport à ce sujet.
En surchargeant le squelette sommaire.html, la redirection automatique vers le bon secteur de langue est désactivé. Pour les articles et rubriques : id_article et id_rubrique ne sont plus passé à la noisette inclure/menu_langues et le menu ne peut donc plus fonctionner correctement.
Assurez que les variables nécessaires sont bien passées à la noisette.
Cordialement
Rainer
Cordialement
Rainer
# Le 7 mai 2014 à 09:16, par Rainer Müller
En réponse à : Site multilingue facile
le bon lien pour les secteurs par langue
Répondre à ce message