Ikiwiki uses many templates for many purposes. By editing its templates, you can fully customise its appearance, and avoid duplicate content.

Ikiwiki uses the HTML::Template module as its template engine. This supports things like conditionals and loops in templates and is pretty easy to learn. All you really need to know to modify templates is this:

template pages

Template pages are regular wiki pages containing a [[!iki ikiwiki/directive/templatebody desc="templatebody directive"]], used as templates for other pages. The parts of the template page outside the directive can be used to document it.

The [[!iki ikiwiki/directive/template desc="template directive"]] allows template pages to be filled out and inserted into other pages in the wiki.

These template pages are currently available:



If the template does not contain a templatebody directive, the entire source of the page is used for the template. This is deprecated.

template files

Template files are unlike template pages in that they have the extension .tmpl. Template files are used extensively by Ikiwiki to generate html. They can contain html that would not normally be allowed on a wiki page.

Template files are located in /usr/share/ikiwiki/templates by default; the templatedir setting can be used to make another directory be searched first. Customised template files can also be placed inside the "templates/" directory in your wiki's source -- files placed there override ones in the templatedir.

Here is a full list of the template files used:

© 2020-02-02