SPIP-Contrib

SPIP-Contrib

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

289 Plugins, 197 contribs sur SPIP-Zone, 132 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

  • Module de paiement Paypal Express Checkout

    12 juin 2015 – commentaires

    Ce mode de paiement par Paypal Express Checkout est sécurisé et peut-être utilisé en toute confiance. Il permet également, dans le cadre de certaines boutiques, d’optimiser le workflow de paiement en sautant l’étape de création de compte et en (...)

  • Commandes

    16 mai 2014 – 68 commentaires

    Le plugin « commandes » permet de gérer des commandes. Attention Le plugin ne s’occupe pas de la gestion des paniers, ni des paiements, ni des factures. Pour l’aspect « boutique », voir le post-scriptum. Ce plugin a été élaboré grâce aux contributions (...)

  • Slick

    17 mai 2017 – 23 commentaires

    Intégration à SPIP du carrousel Slick : https://kenwheeler.github.io/slick/ Fonctions de Slick Son utilisation permet d’afficher une liste d’éléments défilants, en l’occurrence ici une série de photographies. Par les configurations proposées, il est (...)

  • Mailsubscribers

    16 janvier 2013 – 385 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes de (...)

  • oEmbed

    4 décembre 2013 – 140 commentaires

    C’est quoi ce truc ? oEmbed est un protocole ouvert qui permet d’insérer le contenu d’une page web dans une autre page. Le contenu inséré peut être de plusieurs types : photo, vidéo, URL ou extrait HTML. L’échange d’information a lieu entre un site (...)