aboutsummaryrefslogtreecommitdiff
path: root/doc/plugins/edittemplate.mdwn
blob: 798d1290c12d85992dad5f826381292400565cbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[[template id=plugin name=edittemplate author="[[Joey]]"]]
[[tag type/useful]]

This plugin allows registering template pages, that provide default
content for new pages created using the web frontend. To register a
template, insert a [[Preprocessor Directive|/ikiwiki/preprocessordirective]] on some other page.

	\[[!edittemplate template="bugtemplate" match="bugs/*"]]

In the above example, the page named "bugtemplate" is registered as a
template to be used when any page named "bugs/*" is created.

Often the template page contains a simple skeleton for a particular type of
page. For the bug report pages in the above example, it might look
something like:

	Package: 
	Version: 
	Reproducible: y/n
	Details:

The template page can also contain [[cpan HTML::Template]] directives,
similar to other ikiwiki [[templates]]. Currently only one variable is
set: `<TMPL_VAR name>` is replaced with the name of the page being
created.

----

It's generally not a good idea to put the `edittemplate` directive in
the template page itself, since the directive would then be included as
part of the template on new pages, which would then in turn be registered
as templates. If multiple pages are registered as templates for a new page,
an arbitrary one is chosen, so that could get confusing.