B. Watine a écrit :
-----Message d'origine-----
De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part de
monnaieancienne.com
Envoyé : lundi 21 août 2006 19:46
À : spip@rezo.net
Objet : Re: [Spip] [1.9] gestion languesB. Watine a écrit :
-----Message d'origine-----
De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part de
monnaieancienne.com
Envoyé : lundi 21 août 2006 18:29
À : spip@rezo.net
Objet : Re: [Spip] [1.9] gestion languesB. Watine a écrit :
Salut à tous
J’ai encore un problème avec le système de gestion des langues.
Sur ma page sommaire, un article me sert à éditer la page d’accueil
(n°
285). J’aimerai que quand on passe en anglais, l’article affiché soit
la
traduction de cet article (n° 316).
Donc dans mon squelette, j'ai ca :
<BOUCLE_article_principal(ARTICLES) {id_article=285} {lang}>
<div class="texte">#TEXTE</div>
</BOUCLE_article_principal>Ca m'affiche bien le contenu en français, mais quand je passe en
anglais,
l'article correspondant (316) ne s'affiche pas.
Qu'ai-je oublié ?
Je pense que j'ai un problème au niveau du multilinguisme car quand je
suis
sur un article qui présente des traductions, et que je clique sur ce
lien,
cela me renvoi un 404.
Ben
Tu dois pouvoir utiliser les <multi></multis> dans le lien
style <a href
="<multi>[en]spip.php?article316[fr]spip.php?article285</multi>"> etc</a>
MA
Je n'ai pas de lien sur la page d'accueil, c'est directement un article
à
afficher. Pourquoi le critère {lang} ne fonctionne t'il pas dans ce cas
?
Mon article en français (285) a bien sa traduction en anglais (316),
mais
spip ne semble pas la trouver étant donné qu'il n'affiche rien...
Bref, je ne comprends pas.
Ben
Il y a déjà un problème dans ta boucle. Comment veux tu afficher
l'article 316 si tu obliges la boucle à afficher le 285 {id_article=285}
Tu dois avoir {id_article}{lang?} Je ne suis pas sûr du point d'interro.
Ensuite es tu persuadé que l'article en français soit en français par
défaut et l'anglais Anglais par défaut dans l'espace privé?
Ensuite comment fais tu pour passer d'une langue à l'autre? par un petit
drapeau j'imagine.. Quel lien?
Explique un peu mieux ta page, on devrait facilement trouver un remedeMA
Merci de prendre le temps de t'intéresser à mon problème.
Donc, mes traductions ont l'air correct dans l'espace privé. L'article 285
(français) a bien pour traduction l'article 316 (anglais).
Le passage de l'anglais au français se fait via #MENU_LANG modifié par mes
soins afin d'avoir des petits drapeaux au lieu du menu déroulant, avec des
liens de cette forme :<a href="#ENV{url}&#ENV{nom}=fr" title="Français"><img
src="/IMG/icones/icon_fr.gif" alt="Français" /></a>J'ai mis le n° de l'article dans la boucle car c'est la référence. Je pense
que grâce à {lang}, il devrait pouvoir basculer sur la traduction quand je
sélectionne anglais.
Le "?" doit servir à basculer sur la langue d'origine si la traduction n'est
pas trouvée (critère optionnel donc).
Pour info, j'ai aussi $forcer_lang à true.Voilà, encore merci !
Ben
essaye ça:
<B_traductions>
<BOUCLE_traductions(ARTICLES){traduction}{exclus}><a[ href="(#URL_ARTICLE|url_absolue)"] rel="alternate" hreflang="#LANG"[ title="(#TITRE|couper{80}|texte_backend)"]>
<img src="images/#LANG.gif"eight="20" width="14" border="0"><span lang="#LANG" xml:lang="#LANG" dir="#LANG_DIR"></span></a></li>
</BOUCLE_traductions>
</ul>
</div>
</B_traductions>
Dans ton cas tu devrais obtenir un petit carré blanc avec une croix rouge. Si tu cliques dedans tu passes à l'autre langue
MA