SPIP-Contrib

SPIP-Contrib

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

288 Plugins, 197 contribs sur SPIP-Zone, 206 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

  • Enluminures typographiques V3

    25 juillet 2009 – 186 commentaires

    Les Enluminures typographiques V3 permettent d’ajouter au Porte plume les raccourcis typographiques présents dans le Plugin Barre Typographique Enluminée. C’est une extension du PortePlume. Pour la documentation d’usage, se reporter à celle du (...)

  • Refonte de l’identité graphique

    10 juillet – 36 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 (...)

  • En travaux 2.0

    15 mai 2009 – 68 commentaires

    À utiliser pendant une phase de maintenance, ce plugin affiche une page d’avertissement personnalisable, en lieu et place du site public.

  • ScolaSPIP 4

    19 janvier 2016 – 212 commentaires

    ScolaSPIP est plugin-squelette responsive personnalisable pour sites Web d’établissements scolaires basé sur SPIPr Présentation de ScolaSPIP Ce plugin pour SPIP 3 est développé par la Dane de l’académie de Versailles pour les webmestres de cette (...)

  • 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 (...)

Ça spipe par là