SPIP - Contrib

SPIP - Contrib

[ar] [en] [es] [fr] [it]

40 visiteurs en ce moment

fontsizeup fontsizedown
[33 commentaires]

Table des Matières

dimanche 29 juillet 2007, par James

1 vote

Ajoute des ancres en fonction des intertitres et fournit une balise pour afficher la « table des matières » d’un article.

Objectif

L’objectif de ce plugin est d’ajouter des ancres html calculées en fonction du texte de l’intertitre, et de fournir une balise pour afficher la "table des matières" d’un article (contenu de #TEXTE)

Fonctionnement

Les intertitres ( notés {{{intertitre}}} ) seront transformés en <h3 class="spip"><a name="intertitre"></a>intertitre <a href="tdm"><img ... /></a></h3>

Le contenu de l’attribut name est calculé selon une méthode approchant celle des urls propres de spip. Aussi un intertitre {{{ceci est un intertitre spécial}}} sera transforme en <h3 class="spip"><a name="ceci-est-un-intertitre-special"></a>ceci est un intertitre spécial</h3>

Chaque intertitre est mémorisé avec son ancre correspondante pour être reproduite dans la balise #TABLE_MATIERES

Installation

Télécharger l’archive ci-joint, puis décompresser le fichier. Copier ce répertoire tables_matieres dans le répertoire « plugins » de votre site spip. Alternativement, vous l’aurez trouvé dans l’interface de chargement automatique de SPIP, il se trouve alors dans plugins/auto, vous n’avez plus qu’à l’activer. Ensuite activez le plugin via l’interface d’administration de votre site (Configuration/Gestion des plugins : la petite prise électrique rouge...)

Utilisation

Les intertitres seront calculés automatiquement. Pour afficher la table des matières, ajouter la balise #TABLE_MATIERES dans votre squelette à l’interieur d’une boucle ARTICLES.

#TABLE_MATIERES affichera les ancres de la manière suivante par défaut :

Ce qui est un modèle CSS connu puisque tout proche de celui des noisettes de la barre de navigation des squelettes par défaut de SPIP.

Notez la présence d’un noeud DOM #tdm pour permettre l’aller/retour entre la table et les intertitres par simple clic, personnaliser l’habillage en CSS ou jouer avec la table en jQuery.

Prérequis

Attention : Ce plugin est en phase de test sur la zone et nécessite la version la version de développement de SPIP (révision minimum : 9738, introduction de la balise #FOREACH)

Retour en haut de la page

33 Messages de forum

Voir toute la discussion

Pages 1 | 2 | 3 | 4

  • Répondre à ce message

    2 mars 20:21

    j’ai voulu désactiver table des matières, car à l’usage, ca ne me semblait pas pertinent sur un site aux articles courts, et malgré mon paramétrage à 4 titres, il continue à se déclencher pour 1 seul titre..

    surprise, en désactivant, j’ai plein d’erreur d’affichage bizarres..

    y-a-t-il une procédure particulière pour le faire ???

    pam

  • Répondre à ce message

    2 janvier 17:27 , par goetsu

    même problème

  • Répondre à ce message

    27 novembre 2008 13:39 , par cam.lafit

    Bonjour

    En version SPIP 2.0, la noisette des matieres est chargée automatiquement dans toutes boucles artciles faisant appel à #TEXTE

    Comment peux ton le desactiver au cas par cas ?

    Cas d’utilisation, une page sommaire qui liste afficher les X derniers articles.

  • Répondre à ce message

    7 décembre 2007 11:46 , par Fil

    Je viens de rétablir les doublons, en insérant plus finement le code de la TDM dans les traitements. Toutefois ça marche en local ... mais pas en ligne, il reste donc un peu de boulot pour s’assurer que c’est bien compatible partout.

  • Répondre à ce message

    7 décembre 2007 10:55

    le texte est traité par propre() deux fois. Est-ce que ça peux venir de là ?

  • Répondre à ce message

    6 décembre 2007 22:03 , par Fil

    Je viens de remarquer que l’activation de la TDM provoque l’apparition dans le portfolio de tous les documents de l’article, qui n’y figurent pas sans la TDM. Les {doublons} ont donc sauté...

  • Répondre à ce message

    5 décembre 2007 09:56 , par Fil

    Ahhh, c’est ça ! J’avais mal compris : comme j’avais remarqué la disparition de la TDM quand j’enlevais le premier intertitre, je croyais que c’était parce qu’il fallait commencer par un inter ; mais en fait c’est parce qu’il n’en restait plus que deux. Donc ça répond à ma question :)

  • Répondre à ce message

    5 décembre 2007 08:26 , par James

    J’imagine que oui, sans doute. C’est déjà conditionné par le nombre d’intertitres présent dans le texte, nombre qui est paramétrable.

    il faudrait que le #TEXTE ne commence pas par {{{ ?

  • Répondre à ce message

    4 décembre 2007 12:13 , par Fil

    je l’utilise sur http://blog.mondediplo.net/2007-11-...

    est-il possible de faire que ça fonctionne si on ne démarre pas par un {{{intertitre}}} ? ça permettrait d’éviter de répéter le titre de l’article

  • Répondre à ce message

    20 novembre 2007 16:44 , par YannX

    Bizarre, je ne suis qu’en versions "officielles", et je suis sur de l’avoir utilisée sur une 1.9.2(a ou b). Et aujourd’hui : impossible d’avoir l’affichage correct : juste le TDM !

    Pourtant je n’avais pas modifié les squelettes (pas de balise #TABLE_MATIERE ), et j’ai vérifié qu’il n’y a aucune modif du source "table-des-matières" depuis le 6 IX 2007.

    Encore un "mystere de l’informatique" je suppose.. Yx

Pages 1 | 2 | 3 | 4

Répondre à cet article

Retour en haut de la page

Ça discute par ici