SPIP-Contrib

SPIP-Contrib

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

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

Accueil > Squelettes > Tutoriels pour squelettes > Supprimer les appels de notes de bas de page

Supprimer les appels de notes de bas de page

2 mars 2015 – par Perline

3 votes

Ceci est une « contribution pédagogique », qui montre par l’exemple comment développer une nouvelle fonctionnalité pour SPIP.

A la suite du tutoriel « Ne pas voir apparaître les notes de bas de pages attachées à un champ », une autre colle s’est posée : comment faire pour que les appels de notes soient invisibles.

Mais pourquoi donc ne voudrait-on pas voir les appels de note ?

Par exemple, dans l’affichage d’une rubrique, on affiche généralement la balise #CHAPO ou #INTRODUCTION de chacun des articles de la rubrique.

Généralement on n’affiche pas à cet endroit-là les #NOTES.

Donc, si le texte contient une note de bas de page, on verra l’appel de note, mais pas la note.

Comment faire ?

Créons la fonction PHP |supprimer_appel_notes à cet effet.

Fonction qui consiste à remplacer la constante _NOTES_RACCOURCI par rien du tout "".

  1. function supprimer_appel_notes($texte){
  2. $texte = preg_replace(_NOTES_RACCOURCI,"",$texte);
  3. return $texte;
  4. }

Télécharger

Nous allons déposer cette fonction dans le fichier mes_fonctions.php, à créer, s’il n’existe pas, et à déposer dans le dossier squelettes.

Prenons l’exemple de suppression des appels de notes dans la balise #INTRODUCTION, ce serait similaire pour toute balise, #CHAPO, #DESCRIPTIF, #TEXTE, etc., du squelette en question.

À l’origine nous avons la balise [(#INTRODUCTION)].
Nous lui appliquons le filtre |supprimer_appel_notes :

  1. [(#INTRODUCTION|supprimer_appel_notes)]

Mais ça ne marche pas !
En effet, la mise en forme que fait automatiquement SPIP sur cette balise ne permet pas au filtre de s’appliquer APRÈS ce passage.

Nous allons donc empêcher le traitement de mise en forme automatique.
Pour cela, SPIP met à notre disposition l’étoile

  1. *

attachée à la balise.

Car #INTRODUCTION* affiche le contenu brut de la balise, excepté la protection contre javascript.

Résultat de notre balise :

  1. [(#INTRODUCTION*|supprimer_appel_notes)]

Mais en faisant cela, nous avons supprimé l’application par défaut du filtre |propre
 [1], il reste encore à le remettre.

Et voilà donc la forme de la balise, au final, dans le squelette :

  1. [(#INTRODUCTION*|supprimer_appel_notes|propre)]

Pour mémoire, la solution donnée initialement, ne pas afficher les appels de note, solution par CSS

Cette solution permet de ne pas afficher pas les appels de notes, mais seulement de ne pas les afficher. Elle ne supprime pas les appels de notes.
On voit donc ces appels dans le code source final.

La classe attribuée aux appels de notes, par défaut dans les squelettes, est .spip_note_ref.

Pour notre part, nous allons créer une classe supplémentaire .appel_note_invisible.

Dans la feuille de style perso on va rendre invisible à l’écran les éléments auxquels on attribue cette classe :

  1. .appel_note_invisible .spip_note_ref {display: none;}

Dans le squelette, on va attribuer la classe .appel_note_invisible à la balise qui affiche le texte dans lequel on ne veut pas voir apparaître les appels de notes.

  1. [<span class="appel_note_invisible">(#INTRODUCTION)</span>]

Ici, c’est la balise #INTRODUCTION [2] qui n’affichera pas les appels de note que le texte peut contenir.

Le code source

En regardant le code source de la page, vous y verrez toujours l’appel de note.

Notes

[1Ce filtre traite les paragraphes et convertit les raccourcis SPIP (italiques, gras, intertitres, etc.) en html. Il est appliqué par défaut aux textes longs (#TEXTE#CHAPO, etc.).

[2Qui affiche le descriptif de l’article, sinon les 600 premiers caractères du début de l’article (chapeau puis texte).

Dernière modification de cette page le 2 mars 2015

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

  • bigfoot

    16 juin 2015 – 55 commentaires

    Un plugin qui facilite l’utilisation des notes de bas de page en les affichant dans des infobulles à l’aide d’un peu de javascript. Le constat de l’auteur du script : Les notes de bas de page sur le web sont une plaie. Tu dois d’abord essayer de (...)

  • Escal-V3

    16 février 2012 – 272 commentaires

    Un jeu de squelettes proposant un affichage en 2 ou 3 colonnes avec un large choix de noisettes à insérer ou pas, fortement paramétrable depuis l’espace privé . Présentation A l’instar de sa petite soeur plugin Escal-V2 dont elle reprend toutes (...)

  • Calendrier Mini 2.0

    19 mai 2012 – 234 commentaires

    Ce plugin ajoute la balise #CALENDRIER_MINI qui insère un petit widget de navigation par mois dans les dates des évènements. Fonctionnement du mini calendrier Le mini calendrier présente un mois à la fois. Les jours du mois comportant des (...)

  • Agenda 2.0

    3 novembre 2008 – 1075 commentaires

    Voici la version pour SPIP 2.0 du Plugin Agenda pour SPIP 1.9.2, avec une interface remaniée pour encore plus de plaisir. Pour une documentation concernant l’utilisation d’Agenda 3 pour SPIP 3, veuillez pour l’instant vous référer à SPIP 3, Agenda (...)

  • ScolaSPIP 4

    19 janvier 2016 – 162 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 (...)