Filtre Note Bulle 1.0
Filtre pour afficher les notes dans des info-bulles...
Le lundi 28 avril 2008, par FredoMkb
Petit filtre pour afficher les notes de bas de page, insérées dans un article ou dans une brève, dans des info-bulles personnalisables...
Sommaire
Il arrive parfois, surtout pour des longs articles, que la consultation des notes de bas de page, par des aller/retour répétés dans le texte, perturbe la fluidité de la lecture.
De plus, il arrive souvent que les info-bulles, affichées automatiquement grâce à l’attribut "title" des liens des notes se trouvant dans le texte, se révèlent être bien trop limitées pour afficher l’ensemble du texte de la note.
Pour ces raisons, et suite à une demande dans les forums techniques du squelette MiniGriSpip, j’ai imaginé un petit filtre qui permet d’afficher une info-bulle personnalisable, par des styles Css, directement sous le lien de la note de bas de page située dans le texte de l’article.
Le fonctionnement "normal" du lien est préservé, mais l’apparition de l’info-bulle originale (attribut "title") est inhibée, avec un petit bout de code JavaScript, afin qu’elle ne perturbe pas l’affichage de l’info-bulle personnalisée.
Ce filtre est constitué d’une fonction Php qui analyse le texte de l’article (ou brève) pour ajouter quelques balises Html autour des notes de bas de page existantes.
Le code Php du filtre est le suivant :
Pour installer ce filtre, il suffit d’éditer le fichier "mes_fonctions.php" de votre squelette puis d’ajouter, au début, juste après la balise d’ouverture "<?php", le code publié ci-dessus.
Attention !
Les balises "cadre" et "code" ont été légèrement modifiés dans le code publié ici, en ajoutant une espace après le "<" et avant le ">", histoire que l’affichage dans cette page ne soit pas perturbé. Si vous utilisez ce code par un simple copier/coller, veillez à enlever les espaces en trop dans ces deux balises.
Pour éviter tout bogue lors du copier/coller, le plus judicieux serait d’utiliser le code fourni dans le fichier "note_bulle.php" disponible dans l’archive ".zip" téléchargeable à la fin du présent article.
Pour que les info-bulles puissent s’afficher correctement, il faut ajouter à la fin de la feuille de styles principale de votre squelette, deux styles supplémentaires que voici :
Ces styles de base correspondent à une utilisation avec le squelette MiniGriSpip, mais vous pouvez les personnaliser à souhait selon besoins.
L’idéal serait que la largeur de l’info-bulle corresponde à la largeur de la colonne de texte de vos articles et/ou brèves, histoire de pouvoir accéder, avec le curseur de la souris, au contenu de l’info-bulle et ainsi pouvoir cliquer sur les éventuels liens présents.
Pour pouvoir utiliser ce filtre, il faut l’intégrer dans les fichiers Html correspondant aux articles et/ou brèves de votre squelette, dans la balise "#TEXTE" des boucles "ARTICLES" et "BREVES" respectivement.
Voici deux exemples d’intégration, ici en nous basant toujours sur le squelette MiniGriSpip, mais la méthode reste identique pour tout autre squelette.
Il suffit donc de remplacer la balise "#TEXTE" originale, dans la boucle "ARTICLES" du fichier "article.html", par une de ces propositions (suivant votre version de Mgs), ou à adapter au code de votre squelette :
MiniGriSpip version 1.4.x :
MiniGriSpip version 1.6.0 :
Mêmes changements pour la balise "#TEXTE" dans la boucle "BREVES" du fichier correspondant.
Important
Il faut que la balise "#TEXTE" soit suivie d’un astérisque avant le premier filtre et que le filtre "note_bulle" soit suivie du filtre "propre" afin d’assurer le formatage typographique normal de Spip.
L’utilisation de ce filtre est très simple, il suffit d’utiliser deux raccourcis légèrement différents des originaux de Spip, qui sont les doubles crochets "[" d’ouverture et deux autres crochets "]" de fermeture, pour entourer les contenus des notes de bas de page.
Ce filtre s’utilise donc avec exactement les mêmes raccourcis mais en y ajoutant une barre verticale "|" après les doubles crochets d’ouverture "[" et une autre barre verticale "|" juste avant les deux crochets de fermeture "]" de la note de bas de page.
Ce qui donne :
Texte [[|Ceci est une note de bas de page qui sera affichée sous forme d'info-bulle.|]]
La barre verticale "|" est un caractère obtenu par la combinaison des touches "alt + shift + L" (sur Mac et pour un claver Azerty, pour d’autres plate-formes ou claviers il faudra chercher la correspondance).
Donc, pour l’exemple, le texte suivant :
Donnera le résultat suivant :
Non equidem insector delendave carmina Livi esse reor, memini quae plagosum mihi parvo Orbilium dictare ; sed emendata videri pulchraque et exactis minimum distantia miror. [1]Non equidem insector delendave carmina reor, memini quae plagosum mihi parvo Orbilium dictare. Inter quae verbum emicuit si forte. Un lien.
Soit :
Important
Bien entendu, le raccourcis originaux des notes de bas de pages de Spip restent toujours utilisables, les deux syntaxes peuvent ainsi cohabiter sans aucun souci dans le même texte.
Voici une archive ".zip" avec le code Php du filtre, une feille de style avec les formatages des info-bulles et un exemple d’intégration dans un fichier "article.html" (issu du squelette MiniGriSpip 1.6.0).
FiltreSpip-NoteBulle
|
À Vincent, sur les forums techniques de Mgs, à tous les utilisateurs du squelette MiniGriSpip et, bien-sûr, à toute la communauté de Spipeurs.
Notes :
[1] Non equidem insector delendave carmina reor, memini quae plagosum mihi parvo Orbilium dictare. Inter quae verbum emicuit si forte. Un lien.
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
31
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
32
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
33
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
37
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/flock.php on line
60
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
31
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
32
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
33
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
37
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/flock.php on line
60
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/logos.php on line
64
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres_images.php on line
92
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
1236
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
500
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
501
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
549
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
559
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
31
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
32
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
33
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/flock.php on line
60
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
-
Groupe : Technique
- Articles : 1
-
Groupe : MiniGriSpip
- Articles : 3
-
Groupe : Public
- Articles : 7
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
31
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
32
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
33
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/public/cacher.php on line
37
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/flock.php on line
60
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
500
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
501
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
549
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
559
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
500
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
501
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
509
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
500
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
501
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
509
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
268
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
269
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
272
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
242
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
245
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
248
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
296
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
303
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
314
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
1236
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
500
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
501
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
549
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
559
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
500
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
501
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
509
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
500
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
501
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
509
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
268
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
269
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
272
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
242
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
245
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
248
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
296
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
303
Deprecated: Function ereg_replace() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
314
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/texte.php on line
1236
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
166
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
/var/www/sda/3/a/fredomkb/spip/ecrire/safehtml/classes/safehtml.php on line
167
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function eregi() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/filtres.php on line
412
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143
Deprecated: Function ereg() is deprecated in
/var/www/sda/3/a/fredomkb/spip/ecrire/inc/lang.php on line
143