SPIP-Contrib

SPIP-Contrib

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

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

Accueil > Documentation > Tutoriaux pour le code de SPIP > Archives tutoriaux code SPIP > BaliseCommentaire

BaliseCommentaire

19 août 2004

1 vote

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Attention, cet exemple ne marche plus avec la version actuelle du cvs. C’est juste une histoire de commentaires imbriqués, alors les principes décris ici restent intéressant à lire.

Dans SPIP, quand on veut commenter un squelette, c’est pas toujours jolie. On se retrouve dans la page html avec des commentaires pas très pertinents et souvent répétés (à cause des boucles).

Voyons donc comment utiliser la magie du nouveau compilateur pour créer des balises de commentaire.

But

On veut tout simplement émuler /* et */ (commentaire en bloc) comme dans beaucoup de langages de programmation. On déclare donc deux nouvelles balises :
-  #DEBUT_COMMENT
-  #FIN_COMMENT

Comment on déclare une nouvelle balise

Avec la nouvelle version du compilateur proposé par ESJ et actuellement inclus dans la version 1.8a4, on peut facilement déclarer (ou redéclarer) une balise. Il suffit pour cela de placer dans mes_options.php3 une fonction qui s’appelle :
balise_MABALISE

qu’est ce qui se passe dans SPIP

On apprend en regardant dans le code de spip, que cette nouvelle fonction doit :


[...] genere le code PHP correspondant a la balise Spip.

Retourne [...] une EXPRESSION php [...]

La nouvelle fonction de calcul de balise doit donc retourner du code PHP. Mais pourquoi ?

SPIP va utiliser ce code pour construire un fichier .php dans le cache. Ce fichier sera ensuite exécuter pour créer une page — si possible — totalement en html. MAIS il ne faut pas renvoyer n’importe quel code ! il faut renvoyer du code qui renvois une chaîne de caractères. En effet, le compilateur concatène les chaînes retournées par le code de chaque balise avec le code html — ou autre — qui les entoure dans le squelette.

Le code

Regardons le code pour nos deux nouvelles balises :

Explication

Spip va donc essayer de concatener la chaîne retournée par notre code avec le reste des chaînes calculées. On ne peut donc pas juste retourner /* et */, sinon on aura quelque chose comme ça :

$ducode . "du texte brute<br/>"./*. un commentaire .*/ . $leresteducode

Il y aura donc un . de trop. C’est pourquoi — dans le code de la 1er balise — on retourne ''/*. Ainsi on annule le point en trop :

$ducode . "du texte brute<br/>".''/*. un commentaire .*/ . $leresteducode

Dernière modification de cette page le 16 juin 2007

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

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

  • Plugin Logo SVG : pouvoir utiliser des logos SVG

    17 octobre 2016 – 10 commentaires

    Le SVG est un format vectoriel donc très léger et redimensionnable sans pertes, mais SPIP ne l’acceptait pas sur les logos. Ce plugin comble ce manque. Comment ça fonctionne ? Vous installez ce plugin, vous l’activez, et c’est tout. Crédits Une (...)

  • Refonte de l’identité graphique

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

  • Enluminures typographiques V3

    25 juillet 2009 – 185 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 (...)

Ça spipe par là