]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/templates.mdwn
* Add a separate pass to find page links, and only render each page once,
[git.ikiwiki.info.git] / doc / templates.mdwn
index 6d914ef5a8170de15a0389beb26f9628fdb03b2c..05fdc4426b6d4a1d4380c73b3af431595d4357c4 100644 (file)
@@ -2,25 +2,52 @@ 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.
 
 supports things like conditionals and loops in templates and is pretty easy
 to learn.
 
+The aim is to keep almost all html out of ikiwiki and in the templates.
+
 It ships with some basic templates which can be customised:
 
 It ships with some basic templates which can be customised:
 
-* `templates/page.tmpl` - Used for displaying all regular wiki pages.
-* `templates/misc.tmpl` - Generic template used for any page that doesn't
+* `page.tmpl` - Used for displaying all regular wiki pages.
+* `misc.tmpl` - Generic template used for any page that doesn't
   have a custom template.
   have a custom template.
-* `templates/recentchanges.tmpl` - Used for the RecentChanges page.
-* `templates/editpage.tmpl` - Create/edit page.
-* `templates/passwordmail.tmpl` - Not a html template, this is used to
+* `recentchanges.tmpl` - Used for the RecentChanges page.
+* `editpage.tmpl` - Create/edit page.
+* `notifymail.tmpl` - Not a html template, this is used to
+  generate change notification mails for users who have subscribed to
+  changes to a page.
+* `passwordmail.tmpl` - Not a html template, this is used to
   generate the mail with the user's password in it.
   generate the mail with the user's password in it.
+* `rsspage.tmpl` - Used for generating rss feeds for [[blog]]s.
+* `rssitem.tmpl` - Used for generating individual items on rss feeds.
+* `atompage.tmpl` - Used for generating atom feeds for [[blog]]s.
+* `atomitem.tmpl` - Used for generating individual items on atom feeds.
+* `inlinepage.tmpl` - Used for adding a page inline in a blog
+  page.
+* `inlinepagetitle.tmpl` - Used for listing a page inline in a blog
+  archive page.
+* `estseek.conf` - Not a html template, this is actually a template for
+  a config file for the [[HyperEstraier]] search engine. If you like you
+  can read the [[HyperEstraier]] docs and configure it using this.
+* `blogpost.tmpl` - Used for a form to add a post to a blog (and a rss/atom links)
+* `feedlink.tmpl` - Used to add rss/atom links if blogpost.tmpl is not used.
+* `aggregatepost.tmpl` - Used by the [[plugins/aggregate]] plugin to create
+  a page for a post.
+* `searchform.tmpl` - Used by the [[plugins/search]] plugin to add a search
+  form to wiki pages.
 
 
-If you like, you can add this to further customise it:
+If you like, you can add these to further customise it:
 
 
-* `templates/signin.tmpl` - If it exists, it is used for customising the
+* `signin.tmpl` - If it exists, it is used for customising the
   layout of the SignIn form and all assciated forms. The misc.tmpl is
   wrapped around this, so it should only be a template for the form.
   layout of the SignIn form and all assciated forms. The misc.tmpl is
   wrapped around this, so it should only be a template for the form.
+* `prefs.tmpl` - If it exists, it is used for customising the
+  layout of the Prefs form and all assciated forms. The misc.tmpl is
+  wrapped around this, so it should only be a template for the form.
   
   
-  Note that the SignIn form is implemented using CGI::FormBuilder, which
-  interfaces to HTML::Template, so not all of it can be customised with
-  templates, although most of it can, by creating this template. Without
-  the template, CGI::FormBuilder creates the page body by itself.
+Note that the SignIn and Prefs forms are implemented using
+CGI::FormBuilder, which interfaces to HTML::Template, so not all of it can
+be customised with templates, although most of it can, by creating these
+templates. Without the templates, CGI::FormBuilder creates the page bodies
+by itself.
 
 
-I aim to keep almost all html out of ikiwiki and in the templates.
+The [[plugins/template]] plugin also uses templates, though those templates
+are stored in the wiki.