Cette page décrit l’utilisation de la directive (:include:)
pour insérer le contenu d’autres pages dans l’affichage de la page wiki courante. Il y a beaucoup de manières astucieuses d’utiliser cette directive.
Inclusions
- (:include PageName:)
- (:include GroupName.PageName:)
$MaxIncludes
: Pour empêcher des boucles infinies d’inclusion, seul un nombre limité d’inclusions est effectivement exécuté (contrôlé par la variable de configuration $MaxIncludes
, dont la valeur par défaut est 10). Si vous avez besoin de plus de 10 inclusions de fichier dans une page, contactez l’administrateur du Wiki.
- (:include PageName#from:)
- Inclut seulement la ligne de PageName contenant l’ancre [[#from]].
- (:include PageName#from#to:)
- Inclut PageName en commençant par la ligne contenant [[#from]] et jusqu’à la ligne contenant [[#to]].
- (:include PageName#from#:)
- Inclut tout de PageName après l’ancre [[#from]].
- (:include PageName##to:)
- Inclut tout de PageName avant l’ancre [[#to]].
- (:include:PageName lines=10 :)
- Inclut les dix premières lignes de PageName.
- (:include:PageName lines=5..10 :)
- Inclut les lignes 5 à 10 de PageName.
- (:include:PageName lines=5.. :)
- Inclut PageName de la ligne 5 à la fin.
(:include Page1 Page2 Page3 lines=1..5:)
Contributeurs
Question
Comment inclure un fichier externe (depuis le même système de fichiers)?
Réponse
Il y a deux options.
Dans la page wiki elle-même, si vous ne voulez pas donner un accès aux auteurs à n’importe quel fichier du système, créez votre propre balise. En supposant que les fichiers à inclure sont dans un seul répertoire (ou dans un répertoire remplis de liens) pour être un peu plus en sécurité, adaptez ce qui suit:
Markup('includefile', 'directives',
'/\\(:includefile\\s+([-\\w.]+)\\s*:\\)/e',
"Keep(implode('',
file('/home/yourlocalfilesystempath/public_html/inc/$1')))");
Avec ceci, la balise (:includefile something.html:)
incluera le contenu de
/home/yourlocalfilesystempath/public_html/inc/something.html
dans la sortie.
Dans un fichier de modèle .tmpl vous pouvez utiliser <!--file:path/to/template.html-->
.
Voir aussi
Question
Il semble que les pages soient insérées en prenant en compte le contexte de la page appelante. Par exemple si j’inclue une page depuis le groupe Test dont le contenu est Ceci est le groupe {$Group}
. Lors de l’affichage de cette page, on lira “Ceci est le groupe Test”, quand j’inclue cette page dans Main/Sandbox, j’obtiens “ceci est le groupe Main”. — Erreur ou fonctionnalité ? Uli
Question
Je voudrais inclure dans ma page “Donate” un lien Pay Pal.
Résolu par l’utilisation du module “Balises HTML”, mais avec un trou dans la sécurité.
Résolu de façon plus sûre et plus élégante avec les Balises personnalisées.
.
Traduction de PmWiki.IncludeOtherPages
Page originale sur PmWikiFr.IncludeOtherPages - Référencé par
Dernières modifications:
PmWikiFr.IncludeOtherPages: 13 avril 2006 à 18h09
PmWiki.IncludeOtherPages: 06 août 2006 à 21h45