47 lines
1.5 KiB
Plaintext
47 lines
1.5 KiB
Plaintext
|
The `if` directive is supplied by the [[!iki plugins/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".
|
||
|
|
||
|
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.
|