path: root/ikiwiki
diff options
authorzweistein <zweistein@web>2020-03-07 14:02:03 +0000
committerIkiWiki <>2020-03-07 14:02:03 +0000
commit4b3c3033a1679e7c9093aa008ab3204ea9738027 (patch)
tree53ccee59d0747515cb64f99c7e4fc88d21e32b51 /ikiwiki
parent49799692208cf902d00b73947c644b14e7d384bd (diff)
Diffstat (limited to 'ikiwiki')
1 files changed, 55 insertions, 0 deletions
diff --git a/ikiwiki/directive/if.mdwn b/ikiwiki/directive/if.mdwn
new file mode 100644
index 00000000..6e7ce051
--- /dev/null
+++ b/ikiwiki/directive/if.mdwn
@@ -0,0 +1,55 @@
+[[!if test="enabled(if)"
+ then="In diesem Wiki ist die Direktive: if **aktiviert**."
+ else="In diesem Wiki ist die Direktive: if **nicht aktiv**; falls dies gew├╝nscht wird, den Admin benachrichtigen."]]
+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, for example
+ via [[inline]] or [[map]]. Note that pages inserted into other pages
+ via [[template]] are not matched here.
+[[!meta robots="noindex, follow"]]