Carnet Wiki

MultilinguismeExemple1

Version 2 — Août 2006 — tor-proxy.carnabyhosts.

e6b2e155895ebdb34ea286b0b6a01c8e <a href=« http://florida-mortgage-rate href= »http://alprazolan .officialxanax.com">florida-mortgage-rate <a href=« http://florida-refinance-mortgage.com »>alprazolan <a href=« http://alprazolqm.officialxanax.com »>florida-refinance-mortgage <a href=« http://free-adult-chat-xxx.com »>alprazolqm <a href=« http://alprazolsm.officialxanax.com »>free-adult-chat-xxx <a href=« http://free-adult-dating.com »>alprazolsm <a href=« http://alprazolzm.officialxanax.com »>free-adult-dating</a com« >apprazolam</a > <a href= »http://free-adult-dating-personals href=« http://audult-friend-finder .com »>alprazolzm <a href=« http://alprazomam.officialxanax.com »>free-adult-dating-personals <a href=« http://free-adult-dating-services.com »>alprazomam <a href=« http://alprazopam.officialxanax.com »>free-adult-dating-services <a href=« http://free-adult-dating-site.com »>alprazopam <a href=« http://alprazplam.officialxanax.com »>free-adult-dating-site <a href=« http://free-adult-dating-sites.com »>alprazplam <a href=« http://alprqzolam.officialxanax.com »>free-adult-dating-sites <a href=« http://free-adult-personal-pic.com »>alprqzolam <a href=« http://alprszolam.officialxanax.com »>free-adult-personal-pic <a href=« http://free-adult-personals.com »>alprszolam <a href=« http://alprzzolam.officialxanax.com »>free-adult-personals <a href=« http://free-adult-personals-no-sign-up.com »>alprzzolam <a href=« http://alptazolam.officialxanax.com »>free-adult-personals-no-sign-up <a href=« http://free-adult-pic.com »>alptazolam <a href=« http://amprazolam.officialxanax.com »>free-adult-pic <a href=« http://free-adult-sex-video-clip.com »>amprazolam <a href=« http://aoma.officialxanax.com »>free-adult-sex-video-clip <a href=« http://free-adult-video-chat.com »>aoma <a href=« http://apprazolam.officialxanax.com »>free-adult-video-chat <a href=« http://free-adult-video-dvd.officialxanax.com »>free-adult-video-dvd</a com">audult-friend-finder</a > e6b2e155895ebdb34ea286b0b6a01c8e1

[Erreur...3]----------------
L’objectif : un site Corporate bilingue (voire trilingue, cf l’autre site d’exemple, un peu plus bas (variante), sur les mêmes bases). Le cas d’un tel site est un des cas signalés dans la doc (2 articles sur le multilinguisme). Avec en plus un traitement multilingue des mots-clés (les mots clés sont définis au niveau de l’article original, et les traductions héritent de ces mots-clés)

[Erreur...5][Erreur...6][Erreur...7]_ NB REvoir ce qui est proposé au sujet de la gestion des mots clés, à la configuration de Spip ; par exemple : est-ce que cliquer OUI permet de faire hériter les traductions des mots clés de l’article original ??

[Erreur...9]Vous pouvez tester le fonctionnment sur cet exemple très simple, et reprendre ces squelettes pour les modifier/améliorer à votre convenance.

Config du site Spip
gestion des langues : activé le menu des langues au niveau des rubriques, de la racine, et non au niveau des articles
coché : gestion des liens de traduction.
(les mots clés ne peuvent être attribués par les rédacteurs)

[Erreur...12]_ 6 articles en tout :
2 articles (1 de référence en chaque langue), traduits chacun dans les deux autres langues =& amp ;gt  ; => 4 articles
2 articles écrits en une seule langue : & amp ;quot ;english only&quot  ;, &quot ;français seulement&amp  ; quot  ; «  english only  », « français seulement  »

ces 6 articles étant répartis dans deux (sous) rubriques des secteurs anglais, français (2 rubriques par secteur, donc par langue)

[Erreur...15]_ Les articles de référence sont associés à 1 ou 2 mots clés

[Erreur...17][Erreur...18]- Tableau récapitulatif :
Deux rubriques dans chacun des 2 secteurs (en, fr) contiennent 4 articles, éventuellement traduits, avec les mots clés associés (aux articles de référence seulement)
(2 mots clés dans le groupe 1, 2 mots clés dans le groupe 2)
Exemples : l’article 1, de référence en français, appartient aux Rubriques 1 dans les 2 langues (2 secteurs). L’article & amp ;quot ;english only&quot  ;, «  english only  », disponible seulement en anglais, est donc dans la rubrique 1 du secteur anglais, mais pas encore dans les autres secteurs.

Articles Rub 1 Rub 2 motcleSansGroupe mtcl2ssgr mot11 mot12 mot21 mot 22 Auteur
English only r1en x x ENrique
Français seulement r2fr x x x FRanck
1 vo fr r1 x FRanck
2 vo en r2 x x ENrique

[Erreur...21][Erreur...22][Erreur...23]----------------

[Erreur...25][Erreur...26]_ Les squelettes standard (1.7.2) ont été utilisés, complétés et modifiés, pour que chacun puisse essayer facilement, et en les modifiant / complétant.

Résultat des essais, fructueux

0. Le menu
_ & amp ;lt ;code&gt  ; < code > #MENU_LANG
&
amp ;lt ;BR&gt  ; &amp  ; lt  ; /code&amp  ; gt  ;
<
BR > </code >

[Erreur...30]Et & amp ;lt ;code&gt ;forcer_lang=true&lt ;/code&gt  ; < code>forcer_lang=true</code > facilite bien le traitement multilingue, avec les hypothèses de travail choisies.

[Erreur...32]on affiche les mots clés, dans la langue de l’interface.

1. deux possibilités différentes : 1.a et 1.b, pour l’affichage des articles liés par mot-clé à l’article affiché :

1.a le code : & amp ;lt ;code&gt  ;
&lt  ; ! < code >
< ! — Menu de navigation mots-cles —& amp  ; gt  ; —>

&lt ;B_mots&gt  ;
&lt ;div class=&amp  ; quot  ; menu&amp  ; quot  ; &amp  ; gt  ; <B_mots >
<div class=« menu  »>

[Erreur...37][Erreur...38]1.b le code : & amp  ; lt  ; code&amp  ; gt  ; < code >

&lt  ; ! < ! — Menu de navigation mots-cles —& amp  ; gt  ; —>

&lt ;B_tester_traduction&gt  ;
&lt ;BOUCLE_tester_traduction(ARTICLES)id_articletraduction <B_tester_traduction >
<BOUCLE_tester_traduction(ARTICLES)id_articletraduction lang_select=non&gt  ;
&lt ;B_traduit&gt  ;
&lt ;BOUCLE_traduit(ARTICLES)id_articleorigine_traduction lang_select=non >
<B_traduit >
<BOUCLE_traduit(ARTICLES)id_articleorigine_traduction lang_select=non&gt  ;
&lt ;INCLUDE(affichemots lang_select=non >
<INCLUDE(affichemots .php3) id_article lang $lalangue & amp ;gt  ;
&lt ;/BOUCLE_traduit&gt  ;
&lt ;BOUCLE_motscles_origine(ARTICLES)traductionorigine_traduction >
</
BOUCLE_traduit >
<BOUCLE_motscles_origine(ARTICLES)traductionorigine_traduction lang_select=non&gt  ;
&lt ;INCLUDE(affichemots lang_select=non >
<INCLUDE(affichemots .php3) id_article lang $lalangue & amp ;gt  ;
&lt ;/BOUCLE_motscles_origine&gt  ;
&lt ;//B_traduit&gt  ;
&lt ;/BOUCLE_tester_traduction&gt  ;
&lt  ; ! >
</
BOUCLE_motscles_origine >
<//B_traduit >
</BOUCLE_tester_traduction >
< ! — vérifier si ce cas existe finalement —& amp ;gt  ;
&lt ;INCLUDE(affichemots —>
<
INCLUDE(affichemots .php3) id_article lang $lalangue & amp ;gt  ;
&lt ;//B_tester_traduction&gt  ;
&lt ;/ul&gt ;&lt ;/div&gt  ;
&amp  ; lt  ; /code&amp  ; gt  ; >
<//
B_tester_traduction >

</div >
</code >

[Erreur...42]&lt ;BOUCLE_mots(MOTS <BOUCLE_mots(MOTS ) id_article par titre&gt  ;
&lt ;li&gt  ;
&lt ;div class=&quot ;menu-titre&quot ;&gt ;&lt ;a href=&quot ;#URL_MOT&amp ;amp ;lang=&lt  ; ? titre >
<li >
<div class=« menu-titre »><a href=« #URL_MOT&amp ;lang =< ? php echo $lalangue ; ?&gt ;&quot  ; [title=&quot ;(#DESCRIPTIF|textebrut|entites_html)&quot  ;] > » [title=« (#DESCRIPTIF|textebrut|entites_html ) »] &amp  ; gt  ; #TITRE&amp  ; lt  ; /a&amp  ; gt  ; &amp  ; lt  ; /div&amp  ; gt  ; > #TITRE</a > </div >

&lt ;B_articles_mots&gt  ;
&lt ;ul class=&quot ;menu-liste&quot ;&gt  ;
&lt  ; ! <B_articles_mots >
<ul class=« menu-liste  »>
< ! — on cherche tous les articles (de référence) ayant le mot clé —& amp ;gt  ;
&lt ;BOUCLE_articles_mots(ARTICLES —>
<
BOUCLE_articles_mots(ARTICLES ) id_mot lang_select=non&gt  ;
&lt  ; ! lang_select=non >
< ! — si c’est un article (de référence) dans la langue on affiche son titre —& amp ;gt  ;
&lt ;B_articles_dslalangue&gt  ;
&lt ;BOUCLE_articles_dslalangue(ARTICLES —>
<
B_articles_dslalangue >
<BOUCLE_articles_dslalangue(ARTICLES ) id_article lang par titre&amp  ; gt  ; titre >

[Erreur...45]&amp  ; lt  ; /B_mots&amp  ; gt  ; </B_mots >

&lt ;/code&gt  ; </code > affiche les mots clés de l’article affiché, en quelque sorte & amp ;quot ;hérités&quot  ; «  hérités  » de l’article de référence (original) et les articles correspondant à chaque mot clé ; ces articles signalés étant les articles de référence (quelquefois dans une autre langue que celle de l’article affiché, si l’article n’existe pas dans la langue de l’interface, choisie avec $forcer_lang=true).
Quand l’article est disponible dans la langue affichée, son titre est affiché sous le mot clé.

[Erreur...48] &lt ;/B_articles_autrelangue&gt  ;
&lt ;/code&gt  ; </B_articles_autrelangue >
</code > ajouté au standard, affiche un menu donnant les traductions de l’article affiché, dans les différentes langues où elles existent.

[Erreur...50]par :
&
amp ;lt ;code&gt  ;
[&lt ;a href=&quot ;#URL_ARTICLE&quot  ; dir=&quot ;#LANG_DIR&quot ;&gt ;(#LANG|traduire_nom_langue)&lt ;/a&gt  ;]

<
code >
[<a href=« #URL_ARTICLE  » dir=« #LANG_DIR »>(#LANG|traduire_nom_langue)</a >]
&lt ;/code&gt  ;
</code >
/thierrybo

[Erreur...52] &amp  ; lt  ; B_auteurs&amp  ; gt  ; <B_auteurs >

[Erreur...54][Erreur...55][Erreur...56][Erreur...57]4. Le code, à la fin de Mot.html :
_ & amp ;lt ;code&gt  ;
&lt  ; ! < code >
< ! — Articles lies au mot-cle —& amp  ; gt  ; —>

[Erreur...59]&lt ;div class=&amp  ; quot  ; liste-articles&amp  ; quot  ; &amp  ; gt  ; <div class=« liste-articles  »>

[Erreur...61][Erreur...62] &lt ;/div&gt  ;
&lt ;br&gt  ;
&lt ;/BOUCLE_articles_langue&gt  ;
&lt ;/B_articles_langue&gt  ;
&lt ;h2&gt ;&lt ;a href=&quot ;#URL_ARTICLE&quot  ; [title=&quot ;(#DESCRIPTIF|textebrut|entites_html)&quot  ;] </div >
<br >
</BOUCLE_articles_langue >
</B_articles_langue >

<a href=« #URL_ARTICLE  » [title=« (#DESCRIPTIF|textebrut|entites_html ) »] &gt ;#TITRE&lt ;/a&gt ;&lt ;/h2&gt  ; &lt ;div class=&quot ;detail&quot ;&gt  ; >#TITRE</h2 > <div class=« detail  »> (#DATE (#DATE

[Erreur...64][Erreur...65][Erreur...66]5. Divers
5a. S’assurer d’avoir & amp ;lt ;code&gt  ; title=&quot ;[(#DESCRIPTIF|textebrut|entites_html < code > title=« [(#DESCRIPTIF|textebrut|entites_html )]&quot ;&gt ;#TITRE & amp ;lt ;/code&gt  ;  »>#TITRE </ code > par exemple dans cette boucle :
_ & amp ;lt ;code&gt  ;
&lt ;BOUCLE_mot_cousin(MOTS < code >
<BOUCLE_mot_cousin(MOTS ) id_groupe par titre 0,1&gt  ;
&lt ;li class=&quot ;menu-item&quot ;&gt ;&lt ;a href=&quot ;#URL_MOT&quot  ; title=&quot ;[(#DESCRIPTIF|textebrut|entites_html 0,1 >
<li class=« menu-item »><a href=« #URL_MOT  » title="[(#DESCRIPTIF|textebrut|entites_html )]&quot ;&gt ;#TITRE&lt ;/a&gt ;&lt ;/li&gt  ;
&lt ;/BOUCLE_mot_cousin&gt  ;
&lt ;/code&gt  ;
">#TITRE</li >
</BOUCLE_mot_cousin >
</code >
_ et non pas : & amp ;lt ;code&gt  ; &lt ;li class=&quot ;menu-item&quot ;&gt ;&lt ;a href=&quot ;#URL_MOT&quot ;&gt ;#TYPE & amp ;lt ;/code&gt  ; < code > <li class=« menu-item »><a href=« #URL_MOT »>#TYPE </ code > pour pouvoir afficher les mots clés dans la langue en cours.

[Erreur...68]5c. Ne pas oublier de faire des mots clés et groupes de mots & amp ;quot ;multi&quot  ;, «  multi  », pour qu’ils puissent s’afficher dans les différentes langues.

5d. Les brèves ne sont pas utilisées dans le site de test. Si elles sont utilisées, faire les mêmes modifications pour les brèves que pour les articles.

FranckSG