SPIP-Contrib

SPIP-Contrib

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

286 Plugins, 197 contribs sur SPIP-Zone, 246 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 ?
  • [Se connecter]

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

  • Metas +

    3 décembre – commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

  • Critère {mots}

    6 août 2009 – 316 commentaires

    Permettre de sélectionner facilement des objets SPIP ayant un ou des mots clefs en communs.

  • LinkCheck : vérificateur de liens

    13 février 2015 – 64 commentaires

    Ce plugin permet de chercher et tester l’ensemble des liens présents dans les objets. Vous pourrez donc en quelques clics connaître les liens brisés ou défectueux qui se sont immiscés dans le contenu de votre site SPIP. La vérification s’effectue en (...)

  • Import ICS 2 (agenda distant)

    2 août – 39 commentaires

    La version 2 du plugin « import ICS » en reprend la principale fonctionnalité, à savoir l’ajout automatique d’évènements distants dans la liste des évènements d’un site. À la différence de la première version, elle ne dépend pas du plugin « Séminaire » et est (...)

  • GIS 4

    11 août 2012 – 1286 commentaires

    Présentation et nouveautés La version 4 de GIS abandonne la libraire Mapstraction au profit de Leaflet. Cette librairie permet de s’affranchir des librairies propriétaires tout en gardant les mêmes fonctionnalités, elle propose même de nouvelles (...)