[[!meta author="""http://jmtd.livejournal.com/"""]] [[!meta authorurl="""http://jmtd.livejournal.com/"""]] [[!meta title="""change to ikiwiki/directive/template on ikiwiki"""]] [[!meta permalink="http://ikiwiki.info/recentchanges/#change-da9e1ea667f82d5fca9168dbed19be08040570ff"]]
[[revert|wikiicons/revert.png]]diff --git a/doc/ikiwiki/directive/template.mdwn b/doc/ikiwiki/directive/template.mdwn index 9e3ae54..df391f9 100644 --- a/doc/ikiwiki/directive/template.mdwn +++ b/doc/ikiwiki/directive/template.mdwn @@ -60,22 +60,30 @@ few things: `<TMPL_IF variable>text</TMPL_IF>`. * To use one block of text if a variable is set and a second if it's not, use `<TMPL_IF variable>text<TMPL_ELSE>other text</TMPL_IF>` +* Each template file included in the wiki's source will also generate a regular + wiki page. In many cases you might want to prevent some of your template + being interpreted for the regular page. Use the [[if]] directive with the + `included()` test to guard the template code. Here's a sample template: - <span class="infobox"> - Name: \[[<TMPL_VAR raw_name>]]<br /> - Age: <TMPL_VAR age><br /> - <TMPL_IF color> - Favorite color: <TMPL_VAR color><br /> - <TMPL_ELSE> - No favorite color.<br /> - </TMPL_IF> - <TMPL_IF notes> - <hr /> - <TMPL_VAR notes> - </TMPL_IF> - </span> + \[[!if test="included()" then=""" + <span class="infobox"> + Name: \[[<TMPL_VAR raw_name>]]<br /> + Age: <TMPL_VAR age><br /> + <TMPL_IF color> + Favorite color: <TMPL_VAR color><br /> + <TMPL_ELSE> + No favorite color.<br /> + </TMPL_IF> + <TMPL_IF notes> + <hr /> + <TMPL_VAR notes> + </TMPL_IF> + </span> + """ else=""" + This is a template page. + """]] The filled out template will be formatted the same as the rest of the page that contains it, so you can include WikiLinks and all other forms of wiki