Ikiwiki nutzt viele Vorlagen für viele Zwecke. Durch Bearbeiten dieser Vorlagen kann das Aussehen dieser Seite vollständig angepasst und Wiederholungen im Inhalt vermieden werden.
Ikiwiki verwendet das Modul HTML::Template für Vorlagen. Das unterstützt Bedingungen und Schleifen, außerdem ist es ziemlich einfach zu lernen. Um Vorlagen anzupassen, genügt es Folgendes zu wissen:
- Um den Wert einer Variable einzufügen, verwende
<TMPL_VAR Variable>. - Wenn ein Textblock nur dann angezeigt werden soll, wenn eine Variable
gesetzt ist, verwende
<TMPL_IF Variable>Text</TMPL_IF>. - Um einen Textblock anzuzeigen, wenn eine Variable gesetzt ist, und einen
anderen, wenn sie es nicht ist, verwende
<TMPL_IF Variable>Text<TMPL_ELSE>anderer Text</TMPL_IF>.
Vorlagen-Seiten
Vorlagenseiten sind normale Wiki-Seiten, die eine \"templatebody-Anweisung\" enthalten; sie werden als Vorlagen für andere Seiten verwendet. Die Teile der Vorlagenseite, die außerhalb dieser Anweisung liegen, können zur Dokumentation der Vorlage genutzt werden.
Die template-Anweisung erlaubt es, Vorlagen-Seiten auszufüllen und auf anderen Wiki-Seiten zu verwenden.
Die edittemplate-Anweisung kann verwendet werden, damit neue Seiten zunächst den Text einer Vorlagenseite enthalten, die dann beim Bearbeiten ausgefüllt werden kann.
Diese Vorlagenseiten sind aktuell verfügbar:
Wenn die Vorlage keine templatebody-Anweisung enthält, wird die gesamte
Seite als Vorlage verwendet. Dies ist überholt.
Vorlagendateien
Vorlagendateien unterscheiden sich von Vorlagenseiten dadurch, dass sie die
Endung .tmpl haben. Vorlagendateien werden ausgiebig von Ikiwiki genutzt,
um HTML zu erzeugen. Sie können HTML enthalten, dass auf einer Wiki-Seite
normalerweise nicht erlaubt ist.
Vorlagendateien befinden sich standardmäßig unter
/usr/share/ikiwiki/templates; wenn in den Einstellungen ein templatedir
angegeben ist, wird das dort genannte Verzeichnis zuerst
durchsucht. Angepasste Vorlagendateien können auch im Unterverzeichnis
"templates/" des Wiki-Quelltextes platziert werden -- Dateien dort
übersteuern jene im templatedir.
Die folgenden Vorlagendateien werden verwendet:
page.tmpl- Wird verwendet, um normale Wiki-Seiten anzuzeigen. Dies ist die wichtigste Vorlage, um das Aussehen von Ikiwiki anzupassen. (The pagetemplate directive can be used to make a page use a different template thanpage.tmpl.)rsspage.tmpl- Used for generating rss feeds for blogs.rssitem.tmpl- Used for generating individual items on rss feeds.atompage.tmpl- Used for generating atom feeds for blogs.atomitem.tmpl- Used for generating individual items on atom feeds.inlinepage.tmpl- Used for displaying a post in a blog.archivepage.tmpl- Used for listing a page in a blog archive page.titlepage.tmpl- Used for listing a page by title in a blog archive page.microblog.tmpl- Used for showing a microblogging post inline.blogpost.tmpl- Used for a form to add a post to a blog (and rss/atom links)feedlink.tmpl- Used to add rss/atom links ifblogpost.tmplis not used.aggregatepost.tmpl- Used by the aggregate plugin to create a page for a post.searchform.tmpl,googleform.tmpl,duckduckgoform.tmpl- Used by the search plugin, google and duckduckgo plugins to add search forms to wiki pages.searchquery.tmpl- This is a Omega template, used by the search plugin.comment.tmpl- Used by the comments plugin to display a comment.change.tmpl- Used to create a page describing a change made to the wiki.recentchanges.tmpl- Used for listing a change on the RecentChanges page.autoindex.tmpl- Filled in by the autoindex plugin to make index pages.autotag.tmpl- Filled in by the tag plugin to make tag pages.calendarmonth.tmpl,calendaryear.tmpl- Used by ikiwiki-calendar to make calendar archive pages.trails.tmpl- Used by the trail plugin to generate links on each page that is a member of a trail.notifyemail.tmpl- Used by the notifymail plugin to generate mails about changed pages.editpage.tmpl,editconflict.tmpl,editcreationconflict.tmpl,editfailedsave.tmpl,editpagegone.tmpl,pocreatepage.tmpl,editcomment.tmplcommentmoderation.tmpl,renamesummary.tmpl,passwordmail.tmpl,emailauth.tmpl,login-selector.tmpl,revert.tmpl- Parts of ikiwiki's user interface; do not normally need to be customised.