Warning: Use of undefined constant USER_AUTH_VERSION - assumed 'USER_AUTH_VERSION' (this will throw an Error in a future version of PHP) in /home/clients/8ef696c5eb3119a3a1c9089013d2fece/web/cookbook/userauth.php on line 31

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; UserSessionVars has a deprecated constructor in /home/clients/8ef696c5eb3119a3a1c9089013d2fece/web/cookbook/userauth/UserSessionVars.php on line 39

Warning: Use of undefined constant USERSESSIONVARS - assumed 'USERSESSIONVARS' (this will throw an Error in a future version of PHP) in /home/clients/8ef696c5eb3119a3a1c9089013d2fece/web/cookbook/userauth/UserSessionVars.php on line 37

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; HtPasswd has a deprecated constructor in /home/clients/8ef696c5eb3119a3a1c9089013d2fece/web/cookbook/userauth/HtPasswd.php on line 55

Warning: Use of undefined constant HTPASSWD_CLASS - assumed 'HTPASSWD_CLASS' (this will throw an Error in a future version of PHP) in /home/clients/8ef696c5eb3119a3a1c9089013d2fece/web/cookbook/userauth/HtPasswd.php on line 53

Deprecated: Function create_function() is deprecated in /home/clients/8ef696c5eb3119a3a1c9089013d2fece/web/pmwiki.php on line 501
Valdemar.fr

En Français

Traduction

Pmwiki.org(approuver les sites)

En Anglais

Menu de la version anglaise

Table des matières

But

Générer une table des matières pour une page wiki, en utilisant les en-têtes (titres) trouvées sur cette page.

Solution

Le script pagetoc.php -- ceci est une version de développement et nécessite des essais avec la version 2 de PmWiki.

Mettre pagetoc.php dans votre répertoire cookbook/ .

Ajouter la ligne suivante au fichier local/config.php

include_once("cookbook/pagetoc.php");

Quelques notes sur l'utilisation par rapport à d'autres scripts:

  • Il reconnait quelques balises complémentaires de PmWiki:Cookbook.MarkupExtensions, mais doit fonctionner sans nécessiter l'installation d'aucun autre script.
  • Si vous utilisez PmWiki:Cookbook.MarkupExtensions, vous devez utiliser la version 2.0.5 ou ultérieure (pour préserver l'indépendance des scripts, nombre de parties du script 2.0.4 ont été déplacées vers pagetoc)
  • pagetoc supprime la table dans la vue imprimée, mais PmWiki:Cookbook.PublishWikiTrail transforme l'action='print' en action='browse', aussi il faut inclure pagetoc avant d'inclure publish
  • Le script cesse de rechercher les en-têtes quand il atteint une directive de coupure de page (:breakpage:)

Discussion

L'utilisation la plus simple est d'ajouter la ligne suivante sur n'importe quelle page wiki

(:toc:)

C'est tout. Tout en-tête après la directive toc sera listé, sur 2 niveaux.

Vous pouvez faire apparaître les ancres en écrivant

(:toc anchors=visible:)

Si vous avez entré vos propres ancres, le script les utilise. Si vous voulez que vos ancres soient visibles, écrivez

[[##ancre]] au lieu de [[#ancre]]

Vous pouvez changer le titre par défaut de la table en écrivant

(:toc Titre de remplacement:)

Vous pouvez combiner des ancres visibles avec un autre titre en écrivant

(:toc anchors=visible Titre de remplacement:)

Vous pouvez changer la liste numérotés en liste simple en écrivant

(:*toc:)

Vous pouvez utiliser des balises wiki dans vos en-têtes et toc créera un texte de lien approprié. En principe...

Les balises Standard PmWiki [[#anchor | text]] sont acceptées. TableDesMati?ères améliore ceci de 2 manières:

[[#ancre | #]] utilise le texte du paragraphe après [[#ancre]] comme texte de lien

[[#ancre | *]] utilise "ancre" comme texte de lien

Variables de configuration

$DefaultTocTitle est mis à "On this page..."
$TocHeaderFmt est mis à "<b>$TocTitle</b>"
$VisibleAnchor est mis à §
$VisibleAnchorLinks est mis à false (une ancre visible anchor mis comme titre; true en fait une référence HTML href)
$TocSize est mis à 'smaller'
$NumberToc est mis à true

Soyez certain d'affecter la variable $TocSize (à 'medium' par exemple) avant d'inclure le script pagetoc.

Dans ce cas, le code qui définit le style est exécuté dès chargement du script, d'ou la nécessité de fixer la variable de taille avant l'inclusion.

Limitations

Le code qui crée la table est embrouillé. L'étendre pour avoir plus de deux niveaux nécessite une réecriture complète de la fonction.

Contributeur

jr?


<< Création automatique de vignettes | Index compléments | PmWiki2PDF >>


Traduction de Cookbook:PageTableOfContents - page originale sur PmWiki:PmWikiFr.TableDesMatières


Page originale sur PmWikiFr.TableDesMatieres - Référencé par
Dernières modifications:
PmWikiFr.TableDesMatieres: 10 septembre 2011 à 17h40

Valdemar.fr est un site personnel sur l'univers des Hérauts de Valdemar à but non commercial. Nous n'avons aucun lien avec Mercedes Lackey. Les textes ne sont pas libres de droit. Merci de prendre contact avec l'administrateur du site pour toute utilisation. Valdemar, une création de Mercedes Lackey. www.mercedeslackey.com