From e990b132016f231ef150085597d02e2eb4883a1f Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Thu, 14 Oct 2010 13:38:43 +0200 Subject: Sync with ikiwiki 3.20100926. --- ikiwiki/directive/if.mdwn | 48 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 ikiwiki/directive/if.mdwn (limited to 'ikiwiki/directive/if.mdwn') diff --git a/ikiwiki/directive/if.mdwn b/ikiwiki/directive/if.mdwn new file mode 100644 index 0000000..2cbf70c --- /dev/null +++ b/ikiwiki/directive/if.mdwn @@ -0,0 +1,48 @@ +The `if` directive is supplied by the [[!iki plugins/conditional desc=conditional]] plugin. + +With this directive, you can make text be conditionally displayed on a page. +For example: + + \[[!if test="enabled(smiley)" + then="The smiley plugin is enabled :-)" + else="No smiley plugin here.."]] + +If the specified `test` succeeds, the `then` text will be displayed, +otherwise the `else` text will be displayed. The `else` part is optional. + +The `then` and `else` values can include any markup that would be allowed +in the wiki page outside the template. Triple-quoting the values even allows +quotes to be included. + +The `test` is a [[ikiwiki/PageSpec]]; if it matches any page in the wiki +then it succeeds. So you can do things like testing for the existence of a +page or pages, testing to see if any pages were created in a given month, +and so on. + +If you want the [[ikiwiki/PageSpec]] to only match against the page that +contains the conditional, rather than matching against all pages in the +wiki, set the "all" parameter to "no". + +In an `if` directive, the regular [[ikiwiki/PageSpec]] syntax is expanded +with the following additional tests: + +* enabled(plugin) + + Tests whether the specified plugin is enabled. + +* sourcepage(glob) + + Tests whether the glob matches the name of the page that contains the + conditional. + +* destpage(glob) + + Tests whether the glob matches the name of the page that is being built. + That might be different than the name of the page that contains the + conditional, if it's being inlined into another page. + +* included() + + Tests whether the page is being included onto another page. + +[[!meta robots="noindex, follow"]] -- cgit v1.2.3