SPIP-Contrib

SPIP-Contrib

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

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

Accueil > Outils pour plugins > SPIP Bonux > Le critère compteur de Bonux

Le critère {compteur} de Bonux

21 décembre 2016 – par JLuc

4 votes

Le critère compteur fait une jointure de la table courante avec une autre table et permet de compter.

Le critère compteur est utilisé avec au minimum un argument, parfois 2.

1er argument : une table

Le premier argument du critère compteur est le nom de table sur lequel doit se faire la jointure dont on veut compter les occurences.

-  Exemple : lister les articles ayant au moins un document et afficher le nombre de documents qui leur est associé :

  1. <BOUCLE_articles(ARTICLES) {"<br />"} {compteur documents}>
  2. ARTICLE #ID_ARTICLE <br />
  3. [Il y a (#COMPTEUR{documents}) documents]
  4. </BOUCLE_articles>

Télécharger

-  Exemple : compter les mots de chaque article

  1. <ul>
  2. <BOUCLE_art(ARTICLES){compteur mots}>
  3. <li>"#TITRE" a #COMPTEUR{mots}</li>
  4. </BOUCLE_art>
  5. </ul>

Télécharger

-  Inversement on peut compter les articles associés à chaque mot :

  1. <ul>
  2. <BOUCLE_frequence_articles(MOTS){compteur articles}>
  3. <li>Le mot '#TITRE' est appliqué à #COMPTEUR{articles} articles</li>
  4. </BOUCLE_frequence_articles>
  5. </ul>

Télécharger

-  Autre exemple, inspiré du plugin ’bilancontributions’, pour lister toutes les extensions des documents (ce n’est pas la seule manière de faire) :

  1. <ul>
  2. <BOUCLE_extensions(TYPES_DOCUMENTS documents){compteur documents}{! par compteur_documents}{statut=publie}{0,10}>
  3. <li>#EXTENSION</li>
  4. </BOUCLE_extensions>
  5. </ul>

Télécharger

Tri

Le critère compteur peut être associé au critère tri en utilisant un argument composé de ’compteur’ suivi du nom de la table.

-  Exemple :

  1. <ul>
  2. <BOUCLE_auteurs(AUTEURS){compteur articles}{tri compteur_articles,inverse}>
  3. <li>#NOM a écrit #COMPTEUR{articles} articles publiés</li>
  4. </BOUCLE_auteurs>
  5. </ul>

Télécharger

Jointures

Pour son fonctionnement propre, le critère compteur crée une jointure avec la table reçue en argument. On peut également utiliser le critère compteur avec une table déjà requise explicitement par la boucle dans une jointure.

-  Par exemple pour le site trad.spip.net, on trouve une boucle :

  1. <BOUCLE_auteurs(AUTEURS spip_versions){compteur versions}{!par compteur_versions}{'<br/>'}>
  2. * <a href="#URL_AUTEUR" class="spip_in">#NOM</a> : #COMPTEUR{versions} révisions
  3. </BOUCLE_auteurs>

Télécharger

2e argument : un champ

Lorsqu’il n’y a qu’un argument, la jointure se fait sur la clé primaire de la table indiquée.
Il est toutefois possible de passer un 2ème argument au critère compteur. Dans ce cas, ce 2ème argument est un champ de la table passée en premier argument.

-  Exemple : voici une version simplifiée d’une boucle présente dans le plugin mediatheque. Cette boucle liste les types de media (image, audio, video, file) et indique le nombre de document correspondant à chacun de ces types :

  1. <ul>
  2. <BOUCLE_medias(DOCUMENTS){compteur types_documents, media}{media IN image,audio,video,file}>
  3. <li> #MEDIA ( #COMPTEUR{types_documents} )</li>
  4. </BOUCLE_medias>
  5. </ul>

Télécharger

Dernière modification de cette page le 21 décembre 2016

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à