A volte si potrebbe voler avere ogni pagina in una determinata categoria basata su uno schema comune. Per esempio, nella categoria address
si potrebbe desiderare avere una tabella già pronta, che necessita solo di essere riempita con dei dati. Questo può essere facilmente ottenuto con i cosiddetti “modelli di categorie”.
Quando una pagina viene creata, DokuWiki controlla se un file template esiste e lo mostra all'interno della finestra di modifica. I modelli quindi sono file .txt e devono contenere marcatori wiki.
Due tipi di file modello possono essere usati:
_template.txt
, che è usato nella categoria corrente.__template.txt
(due sottolineature iniziali), che funziona come il normale file _template.txt
a parte il fatto che viene usato anche in ogni categoria sotto quella in cui è inserito (sono ereditate).Un modo per creare il file modello è di
Il contenuto del file è costituito da semplici normali marcatori wiki.
All'interni del file, si può anche alcuni modelli sostitutivi per rendere lo schema un poco più dinamico.
@ID@ | intero ID della pagina |
---|---|
@NS@ | categoria della pagina |
@PAGE@ | nome pagina (ID senza categorie e spazi sostituiscono le sottolineature) |
@!PAGE@ | come sopra ma con il primo carattere maiuscolo |
@!!PAGE@ | come sopra ma con il primo carattere di ogni parola maiuscolo |
@!PAGE!@ | come sopra ma con ogni carattere maiuscolo |
@FILE@ | nome pagina (ID senza categoria, le sottolineature sono mantenute come sono) |
@!FILE@ | come sopra ma con il primo carattere maiuscolo |
@!FILE!@ | come sopra ma con tutti i caratteri maiuscoli |
@USER@ | ID dell'utente che crea la pagina |
@NAME@ | nome dell'utente che crea la pagina |
@MAIL@ | indirizzo di posta elettronica dell'utente che crea la pagina |
@DATE@ | data e ora di creazione della pagina |
In più si può anche usare qualsiasi segnaposto strftime per inserire la data della creazione della pagina in ogni formato voluto. Se si vuole usare un carattere letterale %
nel modello è necessario raddoppiarlo.
Non si possono editare i _template.txt
tramite DokuWiki – solo qualcuno che può editare i file all'interno delle cartelle di DokuWiki (di solito un amministratore usando FTP o WebDAV) può. Esistono due trucchi per ottenere questo risultato: uno comporta la creazione di collegamenti simbolici e uno comporta la modifica del codice.
In questo modo, si possono memorizzare i modelli in una speciale categoria. Facendo un collegamento simbolico verso di essi si può usare il modello. Si può anche scegliere di rendere un modello non editabile non usando un collegamento simbolico.
In questo modo, tutti i modelli saranno editabili da chiunque abbia accesso in scrittura
inc/common.php
2).
Può essere interessante avere il supporto per la parola chiave @GROUPS@
per estendere agli utenti appartenenti al gruppo che creano pagine ( ed esempio per specificare un insieme di marcatori nella home page dell'utente). Il seguente aggiustamento implementa questo.
Index: dokuwiki-2009-02-14/inc/common.php =================================================================== --- dokuwiki-2009-02-14.orig/inc/common.php 2009-11-19 11:58:41.000000000 +0100 +++ dokuwiki-2009-02-14/inc/common.php 2010-01-05 10:17:35.000000000 +0100 @@ -840,6 +840,7 @@ '@USER@', '@NAME@', '@MAIL@', + '@GROUPS@', '@DATE@', ), array( @@ -855,6 +856,7 @@ $_SERVER['REMOTE_USER'], $INFO['userinfo']['name'], $INFO['userinfo']['mail'], + implode(" ", $INFO['userinfo']['grps']), $conf['dformat'], ), $tpl);
— Olivier Mehani 2010/01/05 10:19