Comment conserver le choix de la langue sous BLIP quand on a un site multilingue ?

17 views
Skip to first unread message

PierreTho

unread,
Oct 29, 2010, 4:55:37 AM10/29/10
to BliP
Bonjour,

J'ai ajouté la valeur #MENU_LANG dans le bandeau (tête du site) afin
de permettre aux visiteurs de choisir la langue entre FR et EN.

Si on est à l'accueil du site le changement des articles FR vers EN
fonctionne correctement car le lien dans l'URL a dans l'URL le
variable "&lang=en", mais dès qu'on navigue dans une rubrique ou sous
rubrique on perd à chaque fois "&lang=en" dans l'URL :-(

Par défaut BLIP affiche les articles en FR et ne conserve pas le choix
de la langue du visiteur ! :-( La variable &lang=en disparait et il
faut refaire à nouveau la sélection du choix de la langue ce qui est
très pénible et risque d'agacer les visiteurs.

J'ai fait pas mal d'heure de lecture sur le net hier, il semblerait
possible de forcer dans spip le choix de la langue du visiteur à tous
les articles du site avec ce valeur : "$forcer-lang=true" dans config/
mes_options.php ou dans ecrire/mes_options.php. Mais dans BLIP ca
déconne et bloque le site, ou c'est peut être moi qui ne sais pas
comment faire ou qui place mal l'info. Je ne suis pas développeur
alors je commence à être un peu perdu car j'ai fait plein d'essais...
+ de 50 tests :-(

Lien : accueil en EN : http://www.silverball.fr/v4/?lang=en
Rubrique 100% Bilingue FR et EN (mais on perd l'info du choix EN de la
page d'accueil) : http://www.silverball.fr/v4/spip.php?page=groupe&id_groupe=4

Comment garder le choix de la langue dans tous les liens ? Ca doit
être tout con mais je ne sais pas faire.

Merci d'avance de votre aide... ça devient urgent car les inscriptions
doivent commencer début nov.

A bientôt
PierreTho

PierreTho

unread,
Oct 29, 2010, 5:22:58 AM10/29/10
to BliP
Il semblerait que dans BLIP le paramètre {lang} soit bien dans les
boucles des pages articles.html, auteur.html, groupe.html etc... si
j'ai bien compris c'est dans ces pages qu'est constitué la fameuse
boucle qui fait afficher les infos dans un page.
d'après ce site : http://www.guiderdoni.net/SPIP-et-le-multilinguisme.html
il semblerait possible de remplacer le paramètre {lang} dans INCLURE
par {#ENV{lang}} mais est-ce nécessaire, et si oui ou faudrait-il le
changer pour obtenir la bonne URL.


Donc est-ce que c'est moi qui aurait mal placé #MENU_LANG dans mon
entête ? Comment je peux faire pour conserver tout le tps la valeur
lang=EN dans l'URL si la langue a été sélectionnée une fois par le
visiteur ?

Ca fait plus de 12 heures que je suis sur ce prob... si on pouvait
m'aider s'il vous plait.

Merci d'avance.

cent20

unread,
Oct 29, 2010, 6:32:42 AM10/29/10
to BliP
Blip pas compativle avec le multilinguisme, désolé

PierreTho

unread,
Oct 29, 2010, 8:23:17 AM10/29/10
to BliP
Quel dommage... pourtant on dirait qu'il manque seulement le placement
dans le lien de la variable "lang=", qui semblerait être possible à
récupérer via la variable envoyé par le menu #MENU_LANG.

Le problème, c'est que je ne suis pas développeur, et que je ne fais
qu'analyser le code de SPIP et BLIP depuis le début pour essayer de
modifier l'apparence. Je n'ai pas les compétences pour me permettre
des modifs dans le code.

--> Vous aidez pour l'évolution de BLIP :
J'aimerai bien pouvoir vous aider à faire évoluer BLIP, et si possible
qu'il puisse vous permettre dans la future version gérer au moins une
langue supplémentaire. Car ce que j'obtiens à ce jour est
opérationnel, sauf qu'il me manque le placement de la variable "lang="
dans les liens URL.

--> Votre point de vue :
Vincent, pourriez-vous me confirmer que les liens du menu ou des
groupes (mot clé) et articles sont uniquement placés dans une boucle
des fichiers suivants du répertoire BLIP :
groupe.html, article.html sommaire.html etc... tout fichier qui
affiche un état dans la structure ?

Dans l'attente de vous lire... car ça serait super si BLIP pouvait
gérer les langues ! Il doit pas manquer grand chose... je l'espère et
j'y crois (car j'en ai plus que besoin... sinon je suis dans la M _ _
_ _ ).

Cordialement PierreTho

cent20

unread,
Oct 30, 2010, 4:56:11 AM10/30/10
to BliP
Re,

La lecture de :

http://groups.google.com/group/blip/browse_thread/thread/1cdcd845b7a914a9/e204a90e6355172f?lnk=gst&q=multilingue#e204a90e6355172f

est conseillée.

En ce moment, je n'ai guère de temps à consacrer au codage du
squelette, qui est figé depuis un bon moment déjà.

Le jour ou j'y remettrais les mains, se sera pour le passer en pur
html 5, pas sur que le multi linguisme soit de la partie (chronophage)

Les liens du menu sont placé dans un unique fichier, c'est le principe
des inclusions.

Ceci dit, il est sous licence GPL, vous pouvez le modifier, l'adapter,
etc

http://programmer.spip.org/

PierreTho

unread,
Oct 30, 2010, 6:34:14 AM10/30/10
to BliP
Re,

OK je comprends, mais je vais tacher de trouver une solution pour
BLIP3.

Pourriez-vous juste me dire dans quel fichier est généré la
constitution de l'URL ?

par exemple quel fichier dans spip permet de générer cette ligne pour
créer le lien : spip.php?page=groupe&id_groupe=4

Est-ce les fameuses boucles des fichiers article.html, mot.html,
groupe.html ?

Je pense qu'une fois que j'aurais mis la main sur le code qui permet
de créer l'URL, BLIP3 pourra gérer une langue par défaut choisie au
départ par le visiteur.

Merci d'avance de votre réponse.

Cordialement,

PierreTho

unread,
Oct 30, 2010, 7:01:43 AM10/30/10
to BliP
Mon idée est d'ajouter manuellement à la fin de la ou les parties du
code qui permettent de générer les URL : &lang=#LANG

Si on le fait à la main dans l'URL ca fonctionne à 100%, donc il faut
le forcer à l'écrire en dur dans la constitution de chaque lien de
toute génération de page sur le MENU, RUBRIQUE et ARTICLE.

Je n'ai tjrs pas trouvé où l'URL, ou par quoi l'URL, était générée.
Vous devez certainement le savoir ;-) ?!

Merci pour votre aide... on approche du but.
J'ai un besoin urgent d'arriver à faire fonctionner cette écriture
d'URL. Car je suis harcelé par des européens pour avoir les infos du
championnat d'europe.

Merci d'avance Vincent

cent20

unread,
Oct 30, 2010, 12:37:14 PM10/30/10
to BliP
Vous essayez de faire très compliqué ...

Si vous n'avez jamais programmé en SPIP, la page suivante vous
parraitra illisible :

http://code.google.com/p/blip3/source/browse/trunk/inc-tete.html

et pourtant c'est elle qui génère le menu.

Il va falloir modifier des dizaines de fichiers, avec des ecritures
subtiles, etc ...

La notion de mot clé traduit n'existe pas dans SPIP à ma connaissance,
il n 'est pas possible de lier deux mots clés, l'un anglais, l'autre
français...

L'astuce le plus simple consiste à utiliser le texte explicatif de
chaque mot clé, pour y mettre un texte en française, un texte en
anglais, et éventuellement un lien vers l'article anglais ...

http://www.cent20.net/spip.php?mot50 > Texte explicatif du mot clé
utilisé ...

cent20

unread,
Oct 30, 2010, 12:39:04 PM10/30/10
to BliP
Vous pouvez aussi utilisez les descriptifs des mots clés de
http://www.silverball.fr/v4/spip.php?page=groupe&id_groupe=4 pour y
mettre des liens, et / ou doubler tous les mots clés avec une version
anglaise ...

On 30 oct, 13:01, PierreTho <broidukr...@yahoo.fr> wrote:

PierreTho

unread,
Oct 30, 2010, 5:26:59 PM10/30/10
to BliP
Bonsoir,

merci d'avoir répondu.

Alors, j'ai pensé le 1er jour à faire dans la mm rubrique la moitié du
menu concerné avec que des sous rubrique commençant par FR et l'autre
moitié par EN. Mais c'est pas très clean.

Donc pour l'instant j'ai bien les articles liés entre eux avec la
version FR et l'autre en EN.
J'ai mis la balise <MULTI> [fr] Titre du mot clé [en] Title of the key
word </MIULTI> et ça fonctionne bien.

J'ai lu également qq part (il faudrait que je retrouve le lien) qu'il
y avait un COOKIE envoyé sur le pc du visiteur lorsqu'il sélectionne
une langue via #MENU_LANG.

Donc l'astuce la plus simple et de s'assurer à chaque génération des
liens que la variable du COOKIE soit lue !

Sinon, il semble qu'il y ait encore plus simple, mais je n'ai jamais
réussi à l'appliquer sur la version actuel SPIP/BLIP, qui est :
$forcer_lang = true ; dans
ecrire/mes_options.php3. Le problème est que ça fige ou bug le site :-
(
J'ai vu également la même information en mettant mes_options.php dans
un autre répertoire de spip ! Donc quelle est le vrai dans tout ça ?
L'autre problème est que je ne sais pas trop quelle est la bonne
version utilisée par ceux qui ont donné cette astuce :(

Mais avec ce paramètre appliqué sur BLIP ou dans SPIP (dès fois on
sait plus qui est quoi lol) on devrait faire fonctionner BLIP avec la
notion des langues.
Je reste convaincu pour le moment que ça reste jouable... le temps
joue contre moi... il faudrait que je trouve une solution avant lundi
soir.

Si tu as une idée... n'hésite pas ;-) En attendant je vais voir un peu
le code de inc-tete et faire des tests.
A+

PierreTho

unread,
Oct 30, 2010, 6:17:35 PM10/30/10
to BliP
RESOLU :) ---> Tu peux modifier mon titre de post et mettre Résolu !

VOILA J'AI SPIP AVEC BLIP3 DANS LA LANGUE DE MON CHOIX !!! GENIAL


Donc voici ce qu'il faut faire :

créer le fichier "mes_options.php" dans le répertoire CONFIG

Dans le fichier mes_options.php écrire ceci :

<?php
$forcer_lang = true;
?>



Dans chaque titre de rubrique et sous rubriques (mot clé) écrire
ceci :

<multi>[fr] Titre en français de votre sous rubrique [en] Titre en
anglais </multi>


Utiliser les options multilingue de spip avec la gestion des liens
automatiques entre les articles.

Voilà le tour est joué... dire que j'ai testé cette configurations
deux fois avec une faute dans le nom du fichier ou en le plaçant dans
un autre répertoire... c'est les boules :( Tout ça parce que ceux qui
avaient posté des messages avaient fait eux memes des fautes...
Bref... maintenant toute est clair.

QUEL PLAISIR ET SOULAGEMENT !

Maintenant dernière chose qui serait super pratique : Si un seul
article existe dans une seule langue alors on affiche directement le
contenu de l'article à partir du mot clé du menu !?

A bientôt. et vive BLIP ! Super boulot Vincent ;-)

cent20

unread,
Oct 31, 2010, 5:05:22 AM10/31/10
to BliP
Tant mieux si ça marche, le jour ou je mettrais BliP à jour je
relirais ces bouts de codes et d'astuces ...
Reply all
Reply to author
Forward
0 new messages