SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

288 Plugins, 197 contribs sur SPIP-Zone, 184 visiteurs en ce moment

Accueil > Multilinguisme > Navigation multilingue > Distinguer auteurs et traducteurs

Distinguer auteurs et traducteurs

28 novembre 2010 – par b_b, Yffic

5 votes

Ceci est une « contribution pédagogique », qui montre par l’exemple comment développer une nouvelle fonctionnalité pour SPIP.

Une petite astuce sortie de la liste spip-zone (Merci à davux et Pierrick) pour afficher les auteurs et traducteurs d’un article quand on utilise le système de gestion des traductions de spip.

On propose d’adopter la convention suivante :
-  les auteurs (au sens spip) de l’article de référence en langue XX sont les auteurs
-  les auteurs (au sens spip) de l’article en langue YY sont les traducteurs XX -> YY.

Le but va donc être, pour un article donné, de rechercher l’article de référence. Dans tous les cas, ses auteurs (au sens spip) seront donc les auteurs.

Puis, si l’article donné est une traduction, on affichera les auteurs (au sens spip), pas exemple entre parenthèse et précédé de la chaine de langue « traduction ».

On peut par exemple surcharger le modèle lesauteurs.html présent dans squelettes_dist et que l’on rangera dans le dossier modèles de ses propres squelettes :

  1. [(#REM)
  2. Affiche la liste des auteurs d'un article
  3.  
  4. Modele pour la balise #LESAUTEURS, dans le cas des auteurs d'un article
  5. (pour un article syndique, la balise affiche directement la valeur du champ)
  6.  
  7. Modification de la dist :
  8. Differencier les auteurs et les traducteurs d'un article
  9. Les auteurs sont ceux de l'article de référence
  10. Les traducteurs sont ceux des articles traduits
  11. ]
  12.  
  13. <BOUCLE_article(ARTICLES){id_article}>
  14. #SET{id_trad,#ID_TRAD}
  15. #SET{id_art,#ID_ARTICLE}
  16. </BOUCLE_article>
  17.  
  18. [(#REM) Si la traduction n'existe pas ]
  19. [(#GET{id_trad}|=={0}|oui) #SET{id_trad,#ID_ARTICLE} ]
  20.  
  21. [(#REM) On affiche toujours les auteurs de l'article de référence ]
  22. <BOUCLE_auteurs_originaux(AUTEURS spip_auteurs_articles) {id_article=#GET{id_trad}}{par nom} {", "}>
  23. <span class="vcard author"><a class="url fn spip_in" href="#URL_AUTEUR">#NOM</a></span>
  24. #SET{nb_auteurs,#TOTAL_BOUCLE}
  25. #SET{id_auteur,#ID_AUTEUR}
  26. </BOUCLE_auteurs_originaux>
  27.  
  28. [(#REM) Si on est dans une traduction on affiche les auteurs comme étant traducteurs ]
  29. <BOUCLE_test_trad(CONDITION){si #GET{id_art}|!=={#GET{id_trad}}}>
  30. <BOUCLE_nbtraducteurs(AUTEURS){id_article}>
  31. #SET{nb_traducteurs,#TOTAL_BOUCLE}
  32. #SET{id_traducteur,#ID_AUTEUR}
  33. </BOUCLE_nbtraducteurs>
  34.  
  35. [(#REM) S'il n'y a qu'un auteur et qu'il est seul traducteur on ne l'affiche pas comme traducteur ]
  36. <BOUCLE_test_nbtraducteurs(CONDITION){si #GET{nb_auteurs,0}|!={1}|ou{#GET{nb_traducteurs,0}|!={1}}|ou{#GET{id_auteur}|!={#GET{id_traducteur}}}}>
  37. <B_auteurs> (<:traduction:>
  38. <BOUCLE_auteurs(AUTEURS){id_article}{par nom} {", "}>
  39. <span class="vcard author"><a class="url fn spip_in" href="#URL_AUTEUR">#NOM</a></span></BOUCLE_auteurs>)
  40. </B_auteurs>
  41. </BOUCLE_test_nbtraducteurs>
  42. </BOUCLE_test_trad>

Télécharger

Dernière modification de cette page le 15 novembre 2012

Retour en haut de la page

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Refonte de l’identité graphique

    10 juillet – 32 commentaires

    Lors de la SPIP Party 2017 à Toulouse, un nouveau contributeur est venu nous présenter son travail sur une refonte du logo. Au delà de la refonte du logo, c’est une toute nouvelle identité graphique pour SPIP que Jordan nous propose. Voici une (...)

  • Agenda Fullcalendar facile

    29 octobre 2016 – 34 commentaires

    Dans un précédent article, nous expliquions comment afficher un agenda Fullcalendar sur son site avec le plugin agenda. Cependant, ceci nécessite des manipulation de squelettes, ce qui n’est pas toujours évident lorsqu’on débute. La présente (...)

  • La Fabrique

    20 avril 2012 – 315 commentaires

    La Fabrique est un outil pour webmestres ou développeurs qui souhaitent créer des plugins. La Fabrique est capable de générer le code source minimal d’un plugin pour SPIP 3 (elle accélère donc le démarrage d’un plugin) et peut s’occuper également de (...)

  • Formulaire upload

    25 septembre 2012 – 34 commentaires

    Ce plugin permet d’uploader des documents depuis l’espace public Objectifs Ce plugin permet d’ajouter un formulaire dans l’espace public pour uploader et gérer des fichiers. A priori, il peut se greffer sur tous types objets SPIP : articles, (...)

  • Publier archivelist.txt via svn/terminal

    10 août 2009 – 11 commentaires

    Objectif : mettre à jour l’index archivelist.txt Environnement : commandes svn via terminal Si vous désirez voir publié dans la zone la version paquet de votre contribution, il faut ajouter la ligne nécessaire dans le fichier archivelist.txt. (...)

Ça spipe par là