SPIP-Contrib

SPIP-Contrib

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

286 Plugins, 197 contribs sur SPIP-Zone, 239 visiteurs en ce moment

Accueil > Outils pour plugins > Le Couteau Suisse > Trousse à Balises : la balise #BOLO et Cie

Trousse à Balises : la balise #BOLO et Cie

Dans le couteau suisse

8 mars 2009 – par Maïeul, Patrice Vanneufville

21 votes

Introduction

Cet outil est une fonctionnalité du plugin « Le Couteau Suisse » que vous pouvez trouver ici : Le Couteau Suisse. Son but est de rassembler quelques balises très utiles dans la rédaction de vos squelettes. Lorsque cela a été possible, la balise proposée a également été déclinée en modèle pour être utilisable à l’intérieur de vos contenus éditoriaux (articles, rubriques, brèves, etc.).

Pour avoir accès à la trousse à balises, il vous faut donc avoir installé ce plugin en suivant la procédure normale d’installation des plugins SPIP.

Ensuite, veuillez activer l’outil « Balises, filtres, critères / Trousse à Balises » en vous rendant sur la page d’administration du plugin en espace privé (Bouton Configuration, et onglet "Le Couteau Suisse").

Du faux texte : la balise #BOLO

Cyril Marion avait proposé une balise #BOLO dans un article. Le but étant de produire un faux texte de type Lorem Ipsum, utile lors de la phase de développement.

La révision 26916 du couteau suisse l’intègre désormais.

La balise #BOLO

Placée dans un squelette, elle produit un faux texte d’environ 3000 caractères ("bolo" ou "lorem ipsum") afin d’aider à la mise au point des pages.

Elle peut prendre un argument numérique, pour limiter le nombre de caractères de faux texte.

Exemple : #BOLO{300} produira 300 caractères de faux texte.

Bien sûr, cette balise accepte tous les filtres de SPIP. Exemple : [(#BOLO|majuscules)].

Le modèle <boloxxx>

La valeur xxx correspond au nombre de caractères de faux texte. Ce modèle s’insère dans tous les contenus SPIP (articles, rubriques, etc.), pour n’importe quelle zone de texte (chapo, descriptif, texte, etc.).

Exemple : le raccourci <bolo300> insère 300 caractères de faux texte.

La balise #CHR

La notation #CHR{XX}, plus courte est plus explicite, est un équivalent à l’une des deux expressions suivantes :
-  #EVAL{"chr(XX)"}
-  #VAL{XX}|chr

Note : La balise #VAL est introduite par SPIP v2.0, mais le Couteau Suisse l’intègre aussi dans les version antérieures de SPIP.

XX représente le numéro ASCII du caractère à représenter, à l’instar de la fonction chr() du langage PHP. Pour vous repérer, voici la table ASCII des 255 premiers caractères : http://www.asciitable.com/.

Un exemple d’utilisation :

<script type='text/javascript'>/*<!#CHR{91}CDATA#CHR{91}*/
ma_fonction_js();
/*#CHR{93}[(#CHR{93})]>*/</script>

Voici le code de cette balise :

  1. // La balise #CHR
  2. function balise_CHR_dist($p) {
  3. if (($v = interprete_argument_balise(1,$p))!==NULL){
  4. $p->code = "chr(intval($v))";
  5. $p->type = 'php';
  6. }
  7. return $p;
  8. }

Télécharger

Bien sûr, il est superflu de proposer un modèle ici car le langage HTML permet d’insérer facilement n’importe quel caractère grâce à son code ASCII : &#0XX;. Exemple : &#091;.

La balise #MAINTENANT

Cette balise renvoie la date et l’heure actuelle. Attention : si le cache de SPIP est utilisé (fonctionnement normal), le résultat renvoyé est celui du moment du calcul de la page. Pour avoir une horloge en direct, reportez vous à l’article suivant : Une horloge (suisse ?) pour le Couteau.

L’argument facultatif est le format du résultat renvoyé, façon PHP. Par défaut, le format Y-m-d H:i:s est utilisé. Tous les formats utilisables sont détaillés ici : http://php.net/manual/fr/function.d....

Exemples d’utilisation :
-  #MAINTENANT
-  #MAINTENANT{Y-m-d}
-  #MAINTENANT{'Y-m-d H:i'}
-  [(#MAINTENANT|affdate)]

Un alias anglophone de la balise est également proposé par le plugin : la balise #NOW qui s’utilise exactement de la même façon.

Voici le code de cette balise :

  1. // La balise #MAINTENANT
  2. function balise_MAINTENANT_dist($p) {
  3. $format = sinon(interprete_argument_balise(1,$p), "'Y-m-d H:i:s'");
  4. $p->code = "date($format)";
  5. $p->interdire_scripts = false;
  6. return $p;
  7. }

Télécharger

Notez que les trois expressions suivantes sont équivalentes :
-  #MAINTENANT
-  [(#VAL{Y-m-d H:i:s}|date)]
-  #EVAL{"date('Y-m-d H:i:s')"}

La balise #AUTORISER_SINON_LOGIN

Le raccourci #AUTORISER_SINON_LOGIN{xxx} est équivalent à :

#AUTORISER{xxx}|sinon_interdire_acces{[(#URL_PAGE{login}|parametre_url{url,#SELF,&})]}

Cette balise est pratique pour lancer une demande de login lorsque le squelette demandé n’est pas autorisé.

Exemple qui restreint une page aux rédacteurs logués :
-  #AUTORISER_SINON_LOGIN{ecrire}.

Exemple qui restreint une page aux administrateurs logués :
-  #AUTORISER_SINON_LOGIN{configurer,_plugins}.

Voici le code de cette balise :

  1. // Appelle la balise #AUTORISER et renvoie une demande de login si niet
  2. function balise_AUTORISER_SINON_LOGIN_dist($p) {
  3. function_exists('balise_AUTORISER')
  4. ? balise_AUTORISER($p) : balise_AUTORISER_dist($p);
  5. $p->code = 'sinon_interdire_acces(' . $p->code
  6. . ', parametre_url(generer_url_public("login","",false),"url",self(),"&"))';
  7. return $p;
  8. }

Télécharger

La balise #LESMOTS

En cours de développement.

Dernière modification de cette page le 2 décembre 2013

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

  • Spip2Spip

    21 février 2008 – 158 commentaires

    Spip2spip permet de synchroniser le contenu de plusieurs sites SPIP entre eux en étendant le principe de la syndication thématique. Les articles d’un SPIP sont récopiés d’un site à l’autre en conservant leur formatage (...)

  • Plugin Duplicator

    3 janvier 2010 – 84 commentaires

    Duplication de rubrique et de ses contenus, et duplication d’articles pour SPIP Fonctionnement Ce plugin permet de dupliquer une rubrique et son contenu depuis l’espace privé en ajoutant un bouton dans la navigation de gauche dans l’espace privé (...)

  • Ferme à SPIP

    3 janvier 2008 – 133 commentaires

    Un petit article synthétique qui explique en quelques mots et captures d’écrans comment faire une « ferme à SPIP » avec le plugin "Mutualisation" à partir d’un nom de domaine principal.

  • Réservation d’événements

    16 mars 2015 – 229 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 (...)

  • Accès Restreint Partiel

    8 septembre 2014 – 22 commentaires

    Voulez-vous masquer une partie du contenu de vos articles aux visiteurs de passage ? et réserver la totalité à certains de vos membres ? Voulez-vous remplacer le contenu occulté par un appel à l’action (pour devenir Membre, bla bla bla...) ? Le (...)

Ça spipe par là