2010-04-23 22:10:46 +02:00
|
|
|
[[Ikiwiki]] uses many templates for many purposes. By editing its templates,
|
2011-01-14 18:21:29 +01:00
|
|
|
you can fully customise its appearance, and avoid duplicate content.
|
2006-03-12 05:09:59 +01:00
|
|
|
|
2010-04-24 07:36:01 +02:00
|
|
|
Ikiwiki uses the HTML::Template module as its template engine. This
|
|
|
|
supports things like conditionals and loops in templates and is pretty
|
2010-04-25 03:39:03 +02:00
|
|
|
easy to learn. All you really need to know to modify templates is this:
|
2010-04-24 07:36:01 +02:00
|
|
|
|
|
|
|
* To insert the value of a template variable, use `<TMPL_VAR variable>`.
|
|
|
|
* To make a block of text conditional on a variable being set use
|
2010-05-06 03:08:41 +02:00
|
|
|
`<TMPL_IF variable>text</TMPL_IF>`.
|
2010-04-24 07:36:01 +02:00
|
|
|
* To use one block of text if a variable is set and a second if it's not,
|
2010-05-06 03:08:41 +02:00
|
|
|
use `<TMPL_IF variable>text<TMPL_ELSE>other text</TMPL_IF>`
|
2010-04-24 07:36:01 +02:00
|
|
|
|
2011-01-14 18:24:55 +01:00
|
|
|
[[!if test="enabled(template) or enabled(edittemplate)" then="""
|
2010-04-24 07:13:37 +02:00
|
|
|
## template pages
|
2007-05-20 01:29:13 +02:00
|
|
|
|
2014-02-21 23:45:29 +01:00
|
|
|
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.
|
2011-01-14 18:23:47 +01:00
|
|
|
"""]]
|
|
|
|
|
|
|
|
[[!if test="enabled(template)" then="""
|
2010-06-14 22:35:12 +02:00
|
|
|
The [[!iki ikiwiki/directive/template desc="template directive"]] allows
|
2011-01-14 18:23:47 +01:00
|
|
|
template pages to be filled out and inserted into other pages in the wiki.
|
2010-04-23 22:10:46 +02:00
|
|
|
"""]]
|
|
|
|
|
|
|
|
[[!if test="enabled(edittemplate)" then="""
|
2010-06-14 22:36:54 +02:00
|
|
|
The [[!iki ikiwiki/directive/edittemplate desc="edittemplate directive"]] can
|
2010-06-14 22:35:12 +02:00
|
|
|
be used to make new pages default to containing text from a template
|
2010-07-16 19:52:06 +02:00
|
|
|
page, which can be filled out as the page is edited.
|
2010-04-23 22:10:46 +02:00
|
|
|
"""]]
|
|
|
|
|
2010-06-13 07:12:04 +02:00
|
|
|
[[!if test="(enabled(template) or enabled(edittemplate))
|
2010-06-13 04:43:34 +02:00
|
|
|
and enabled(inline)" then="""
|
2011-01-14 18:23:47 +01:00
|
|
|
These template pages are currently available:
|
2011-01-14 18:04:36 +01:00
|
|
|
|
2010-06-13 04:43:34 +02:00
|
|
|
[[!inline pages="templates/* and !*.tmpl and !templates/*/* and !*/discussion"
|
|
|
|
feeds=no archive=yes sort=title template=titlepage
|
2011-01-14 18:17:59 +01:00
|
|
|
rootpage=templates postformtext="Add a new template page named:"]]
|
2010-06-13 04:43:34 +02:00
|
|
|
"""]]
|
|
|
|
|
2014-02-21 23:45:29 +01:00
|
|
|
If the template does not contain a `templatebody` directive, the entire
|
|
|
|
source of the page is used for the template. This is deprecated.
|
|
|
|
|
2011-01-14 18:17:59 +01:00
|
|
|
## 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`.
|
2010-04-23 22:10:46 +02:00
|
|
|
|
2011-01-14 18:17:59 +01:00
|
|
|
Here is a full list of the template files used:
|
2010-04-23 22:10:46 +02:00
|
|
|
|
2010-04-24 07:13:37 +02:00
|
|
|
* `page.tmpl` - Used for displaying all regular wiki pages. This is the
|
2011-01-14 18:21:29 +01:00
|
|
|
key template to customise to change the look and feel of Ikiwiki.
|
2011-01-14 18:17:59 +01:00
|
|
|
[[!if test="enabled(pagetemplate)" then="""
|
2010-06-14 22:36:54 +02:00
|
|
|
(The [[!iki ikiwiki/directive/pagetemplate desc="pagetemplate directive"]]
|
2010-06-14 22:35:12 +02:00
|
|
|
can be used to make a page use a different template than `page.tmpl`.)"""]]
|
2010-04-23 23:23:31 +02:00
|
|
|
* `rsspage.tmpl` - Used for generating rss feeds for blogs.
|
2010-04-23 22:10:46 +02:00
|
|
|
* `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.
|
2010-04-23 23:23:31 +02:00
|
|
|
* `inlinepage.tmpl` - Used for displaying a post in a blog.
|
2010-04-23 22:10:46 +02:00
|
|
|
* `archivepage.tmpl` - Used for listing a page in a blog archive page.
|
2010-04-23 23:23:31 +02:00
|
|
|
* `titlepage.tmpl` - Used for listing a page by title in a blog archive page.
|
2010-04-23 22:10:46 +02:00
|
|
|
* `microblog.tmpl` - Used for showing a microblogging post inline.
|
2010-07-16 19:52:06 +02:00
|
|
|
* `blogpost.tmpl` - Used for a form to add a post to a blog (and rss/atom links)
|
2010-04-23 23:23:31 +02:00
|
|
|
* `feedlink.tmpl` - Used to add rss/atom links if `blogpost.tmpl` is not used.
|
|
|
|
* `aggregatepost.tmpl` - Used by the aggregate plugin to create
|
2010-04-23 22:10:46 +02:00
|
|
|
a page for a post.
|
2010-04-23 23:23:31 +02:00
|
|
|
* `searchform.tmpl`, `googleform.tmpl` - Used by the search plugin
|
|
|
|
and google plugin 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.
|
2011-11-04 20:32:41 +01:00
|
|
|
* `trails.tmpl` - Used by the trail plugin to generate links on each page
|
|
|
|
that is a member of a trail.
|
2012-03-29 01:39:08 +02:00
|
|
|
* `notifyemail.tmpl` - Used by the notifymail plugin to generate mails about
|
2012-03-28 22:40:10 +02:00
|
|
|
changed pages.
|
2010-04-23 23:23:31 +02:00
|
|
|
* `editpage.tmpl`, `editconflict.tmpl`, `editcreationconflict.tmpl`,
|
|
|
|
`editfailedsave.tmpl`, `editpagegone.tmpl`, `pocreatepage.tmpl`,
|
|
|
|
`editcomment.tmpl` `commentmoderation.tmpl`, `renamesummary.tmpl`,
|
2010-09-29 07:14:19 +02:00
|
|
|
`passwordmail.tmpl`, `openid-selector.tmpl`, `revert.tmpl` - Parts of ikiwiki's user
|
2010-05-08 01:10:50 +02:00
|
|
|
interface; do not normally need to be customised.
|
2010-04-23 22:10:46 +02:00
|
|
|
|
2012-03-28 22:40:10 +02:00
|
|
|
|
2010-04-23 22:10:46 +02:00
|
|
|
[[!meta robots="noindex, follow"]]
|