SPIP-Contrib

SPIP-Contrib

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

290 Plugins, 198 contribs sur SPIP-Zone, 92 visiteurs en ce moment

Accueil > Outils pour plugins > SPIP Bonux > Bonux pour SPIP3

Bonux pour SPIP3

28 janvier 2015 – par JLuc – commentaires

11 votes

Un grand nombre des fonctionnalités apportées par SPIP Bonux ont été intégrées dans SPIP3, mais il en reste quelques unes qui ne l’ont pas été, et qui constituent le nouveau plugin Bonux pour SPIP3.

Cet article a pour but de lister les balises, critères et fonctions définies dans SPIP Bonux, afin qu’on ne les oublie pas, mais la documentation de ces éléments ne figure pas ici (voir pour cela les autres articles de documentation de Spip Bonux, ou le code source).

Rq : Pour éviter les conflits, certaines de ces fonctionnalités ne sont définies par Bonux que si elles ne sont pas déjà définies par ailleurs.

Balises et critères de boucles

Balises

  1. #SET_PUSH Empile un élément dans un tableau déclaré par #SET{tableau,#ARRAY}
  2. #SET_MERGE
  3. #COMPTEUR
  4. #SOMME
  5. #COMPTE
  6. #MOYENNE
  7. #MINIMUM
  8. #MAXIMUM
  9. #STATS

Télécharger

Les balises #COMPTEUR, #COMPTE, #SOMME, #MOYENNE, #MINIMUM, #MAXIMUM, #STATS requièrent l’usage d’un critère qui spécifie le champ sur lequel porte le calcul de la balise.

Contrairement au critère {compteur table}, ces critères ne calculent pas de jointures.

Exemples d’usage :

-  #SET_PUSH :
#SET_PUSH{tableau,valeur}

Critères statistiques

  1. {compteur}
  2. {compteur_left}
  3. {somme}
  4. {compte}
  5. {moyenne}
  6. {minimum}
  7. {maximum}
  8. {stats}

Télécharger

Exemples d’usage

-  Supposons qu’un champ ’distance’ ait été ajouté aux objets ARTICLE.
La boucle suivante calcule la somme des distances des articles de la rubrique 1 :

  1. <BOUCLE_a(ARTICLES){id_rubrique=1}{somme distance}></BOUCLE_a>
  2. #SOMME{distance}
  3. </B_a>

Télécharger

-  Dans le plugin ’abonnement’ le fichier ’abonnements_stats’ donne plusieurs exemples d’utilisation de ces critères.

Par exemple :

  1. <BOUCLE_nombre(AUTEURS_ELARGIS_ABONNEMENTS){id_abonnement}{statut_paiement=ok}{somme montant}{compte montant}{fusion id_abonnement}>
  2.     <td>#COMPTE{montant}</td>
  3.     <td>[(#SOMME{montant}|number_format{2, ',', ' '}|replace{' ','&nbsp;'})]</td>
  4. </BOUCLE_nombre>

Télécharger

Autre critère

{fusion_supprimer} : ce critère supprime de la requête sql la condition GROUP BY qui y est présente à cette étape de la compilation. Ce peut être utile pour s’affranchir d’un GROUP BY ajouté par défaut par le compilateur SPIP lors d’une jointure et qui interfère. Il est ensuite possible d’y ajouter le critère d’une fusion désirée (cf #3209)

Dans la boucle suivante il est nécessaire d’ajouter {fusion_supprimer} pour obtenir la fusion sur les dates, car le compilateur ajoute ajoute automatiquement un GOUP BY id_article pour la jointure de la table ARTICLES avec la table MOTS :

  1. <BOUCLE_facette_annee(ARTICLES){id_mot=27}{fusion_supprimer}{fusion YEAR(date)}>
  2.     [(#DATE|annee)]<br />
  3. </BOUCLE_facette_annee>

Télécharger

Fonctions php

Bonux définit aussi tout un ensemble de fonctions qui peuvent servir comme filtre, ou pour d’autres plugins.

  1. /** Récupérer les champs date_$suffixe et heure_$suffixe dans l'environnement,
  2. vérifier leur cohérence et les reformater */
  3. function verifier_corriger_date_saisie($suffixe,$horaire,&$erreurs);
  4.  
  5. /** Renvoie le charset d'une ligne à importer */
  6. function importer_csv_importcharset($texte);
  7.  
  8. /** Enlève les accents des clés sinon ca pose des problemes ... */
  9. function importer_csv_nettoie_key($key);
  10.  
  11. /** Lit un fichier csv et retourne un tableau
  12. si $head est true, la premiere ligne est utilisee en header pour générer un tableau associatif*/
  13. function inc_importer_csv_dist($file, $head = false, $delim = ",", $enclos = '"', $len = 10000) ;
  14.  
  15. /** Exporter un champ pour un export CSV */
  16. function exporter_csv_champ($champ) ;
  17.  
  18. /** Exporter une ligne complète au format CSV, avec délimiteur spécifié */
  19. function exporter_csv_ligne($ligne, $delim = ',', $importer_charset = null) ;
  20.  
  21. /** exporter au format CSV. $ressource est un array ou une ressource sql ouverte en lecture */
  22. function inc_exporter_csv_dist($titre, $resource, $delim=',', $entetes = null,$envoyer = true);
  23.  
  24. /** generer une balise img a partir d'un nom de fichier */
  25. function tag_img($img,$alt="",$class="");
  26.  
  27. /** générer une clé temporaire valable 12h pour l'url courante */
  28. function previsu_cle_temporaire($date=null);
  29.  
  30. /** vérifier qu'une clé temporaire valable 12h est bien valable */
  31. function previsu_verifier_cle_temporaire($cle);
  32.  
  33. function _T_ou_typo($valeur, $mode_typo='toujours') ;
  34.  
  35. function spip_array_insert($arr1, $cle, $arr2, $avant=false);
  36.  
  37. function array_replace_recursive($array, $array1);
  38.  
  39. function recurse($array, $array1);
  40.  
  41. /** Coupe une chaine à la longueur demandée, sans abîmer les tags HTML , et avec options : texte de fin si coupé, coupe à la longueur exacte ou en respectant les mots... */
  42. function text_truncate($text, $length = 100, $options = array())
  43.  
  44. /** retourner un tableau constitué de toutes les valeurs d'une colonne d'un tableau bi-dimensionnel (avec éventuellement les valeurs d'une autre colonne comme index) */
  45. function array_column($input = null, $columnKey = null, $indexKey = null);

Télécharger

filtre text_truncate
function text_truncate($text, $length = 100, $options = array());
Le tableau d’options peut contenir plusieurs couples clé-valeur :
-  ’ending’ => la chaine ajoutée à la fin du texte s’il est coupé. Typiquement, c’est ’...’ ou ’lire la suite’.
-  ’exact’ => un booléen indiquant si la coupe se fait à la longueur indiquée exacte, même si c’est au milieu d’un mot, ou si la coupe se fait juste avant ce dernier mot.
-  ’html’ => un booléen indiquant si le texte contient des tags HTML qu’il faut veiller à ne pas couper incorrectement.

fonction array_column

Charge la fonction array_column de PHP 5.5 pour les versions inférieures.

Lire le détail sur : Array_column pour SPIP

Renommés

-  le filtre |aoustrong a disparu : il est devenu |lien_ou_expose et a été intégré dans SPIP.

Voir en ligne : https://plugins.spip.net/spip_bonux

Dernière modification de cette page le 24 avril 2018

Retour en haut de la page
Chargement en cours...

Ça discute par ici

  • Réservation d’événements

    16 mars 2015 – 421 commentaires

    Ce plugin permet d’offrir aux visiteurs de s’inscrire pour un évènement du plugin Agenda et de gérer les réservations enregistrées. Installation Le plugin s’installe comme n’importe quel plugin. il nécessite : Agenda API de vérification Facteur (...)

  • PHANTOM (HTML5UP)

    18 juillet – 27 commentaires

    Squelette SPIP pour intégrer le modèle Phantom de HTML5UP. https://html5up.net/phantom Installation A l’activation, le plugin installe aussi les plugins suivants : crayons, favicon, metasplus+, Couleur d’objet, champs extras, SPIP reset centre (...)

  • Site multilingue facile

    3 mai 2012 – 104 commentaires

    Site multilingue facile permet de mettre en place facilement un site multilingue avec une langue par secteur. Introduction Même si le multilinguisme est nativement intégré dans spip, réaliser un site multilingue n’est pas toujours évident. Ce (...)

  • CKeditor 3.0

    4 octobre 2009 – 1233 commentaires

    CKeditor est l’évolution de l’éditeur WYSIWYG : FCKeditor, avec ce plugin vous pourrez utiliser cet éditeur à la place de l’éditeur de spip tout en laissant le choix à vos auteurs de l’éditeur qu’ils préfèrent utiliser. Attention : cet éditeur WYSIWYG (...)

  • Formidable, le générateur de formulaires

    23 janvier 2012 – 2490 commentaires

    Un générateur de formulaires facilement configurable pour les non-informaticiens et facilement extensible pour les développeurs. Introduction L’objectif était de créer un plugin permettant de générer des formulaires. Historiquement, 2 plugins (...)