Critères spécifiques

Des critères de boucles spécifiques permettent de récupérer les articles dans les langues souhaitées.

lang

Déjà, simplement le critère {lang} permet de sélectionner la langue du visiteur, ou la langue choisie :

// langue du visiteur
<BOUCLE_art(ARTICLES){lang}> ... </BOUCLE_art>
// langue anglaise (en)
<BOUCLE_art(ARTICLES){lang=en}> ... </BOUCLE_art>

traduction

Le critère {traduction} permet de lister les différentes traductions d’un article :

<BOUCLE_article(ARTICLES){id_article}>
  <ul>
    <BOUCLE_traductions(ARTICLES) {traduction}{par lang}>
      <li>[(#LANG|traduire_nom_langue)]</li>
    </BOUCLE_traductions>
  </ul>
</BOUCLE_article>

Ici, toutes les traductions d’un article seront affichées (y compris l’article en cours, que l’on peut enlever avec le critère {exclus}).

origine_traduction

Ce critère permet de retrouver les sources d’un article traduit, c’est à dire celui servant de référence aux traductions. Tous les articles sources :

<BOUCLE_sources(ARTICLES) {origine_traduction}>
#TITRE (#LANG)<br />
</BOUCLE_sources>

La traduction d’origine d’un article :

<BOUCLE_article(ARTICLES){id_article}>
  <BOUCLE_origine(ARTICLES) {traduction}{origine_traduction}>
    #TITRE (#LANG)
  </BOUCLE_origine>
</BOUCLE_article>

Exemple

Afficher un article dans la langue du visiteur si possible, sinon dans la langue principale. On commence par lister dans une rubrique, les articles qui servent de source à la création des traductions. Ensuite, on cherche s’il existe une traduction dans la langue demandée par le visiteur. Selon la réponse on affiche le titre de l’article traduit ou de l’article source.

<BOUCLE_art1(ARTICLES){id_rubrique}{origine_traduction}>
    <BOUCLE_art2(ARTICLES){traduction}{lang=#ENV{lang}}>
        // si une traduction existe
        <li>#TITRE</li>
    </BOUCLE_art2>
        // sinon
        <li>#TITRE</li>
    <//B_art2>
</BOUCLE_art1>

Auteur Matthieu Marcillaud Publié le : Mis à jour : 19/05/10

Traductions : English, français