La directive inline
permet d'inclure des pages dans une autre. C'est une
directive très puissante, qui permet d'utiliser IkiWiki comme un blog, un
bugtracker ou un forum de discussion. La création de flux RSS ou Atom est par
exemple possible.
inline
accepte un grand nombre de paramètres.
pages
- PageSpec des pages à inclure.
show
- Nombre maximum de pages à inclure. S'il est fixé à zéro, il n'y a
pas de limite. Fixé à 10 par défaut, sauf si archive
est activé, auquel cas
c'est zéro (illimité).
archive
- Si fixé à "yes", seul le titre et quelques métadonnées sont
affichés.
skip
- Nombre de pages à ne pas afficher. Permet de n'afficher que
d'anciennes pages.
postform
- Si fixé à "yes", un formulaire pour créer de nouvelles pages
est ajouté.
postformtext
- Texte à afficher dans le formulaire pour créer de nouvelles
pages.
rootpage
- Si ce paramètre est donné, postform
est automatiquement
activé et les nouvelles pages créées seront des sous-pages de la
page donnée.
actions
- Si fixé à "yes", des liens "Modifier" et "Discussion" sont
ajoutés à la fin de chaque page inclue.
template
- Indique quel template utiliser pour chaque page inclue.
Mais attention : vous devez toujours activer archive
si vous ne souhaitez
pas afficher le contenu des pages.
Les valeurs possibles sont :
inlinepage
: Valeur par défaut.archivepage
: Valeur par défaut si archive
est activé.titlepage
: Ne comporte que le titre.microblog
: Optimisé pour les blogs.inlineraw
: N'ajoute qu'une balise <div>
.togglepage
: Le contenu n'est visible que si on clique sur "Afficher".raw
- Si fixé à "yes", les pages inclues le seront telles quelles, sans
template.
sort
- Contrôle l'ordre de tri des pages à inclure. Les valeurs
possibles sont :
age
: Ordre décroissant de leur date de création (valeur par défaut).mtime
: Ordre décroissant de leur date de modification. title
: Ordre croissant du titre.title_natural
: Ordre croissant du titre avec traitement correct des
nombres (utilise Sort::Naturally).reverse
- Si fixé à "yes", inverse l'ordre de tri.
quick
- Si fixé à "yes", les contenus et les métadonnées ne sont pas lus.
timeformat
- Format des dates, identique à celui de strftime(3).
pagenames
- Remplace pages
par une liste de pages (pas de PageSpec).
L'ordre de la liste est conservé et sort
n'a aucun effet dans ce cas.
feedpages
- PageSpec des pages à inclure pour les flux. Par défaut
identique à pages
.
rss
- Si fixé à "yes", crée un flux RSS. Si fixé à "no", interdit le flux
RSS.
atom
- Si fixé à "yes", crée un flux Atom. Si fixé à "no", interdit le
flux Atom.
feeds
- Si fixé à "no", interdit tous les flux.
emptyfeeds
- Si fixé à "no", empêche la création d'un flux vide. Ce
paramètre n'a aucun effet si postform
ou rootpage
est activé.
feedshow
- Nombre maximal de pages pour les flux. Par défaut identique à
show
.
feedonly
- Si fixé à "yes", n'affiche que les flux, pas les pages.
description
- Description du flux RSS.
guid
- Identificateur pour les flux Atom.
feedfile
- Nom du fichier de flux.
Pour créer un blog :
[[!inline pages="blog/* and !*/Discussion" show="10" rootpage="blog"]]
Pour lister les modifications récentes :
[[!inline pages="*" sort="mtime" show="50" quick="yes" archive="yes"]]
La directive edittemplate qui permet d'indiquer un modèle pour les nouvelles pages.