diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-02-12 02:44:47 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-02-12 02:44:47 +0000 |
commit | 479c7a1ea62d8fce3ef54f9deae89230d0b52a5d (patch) | |
tree | f8932f522aa856e9cf35d7db3420d491dd05518e /doc/plugins/conditional.mdwn | |
parent | fe62c0ff209bbf01a3e5eb4a7b9f3b3d99acebca (diff) | |
download | ikiwiki-479c7a1ea62d8fce3ef54f9deae89230d0b52a5d.tar ikiwiki-479c7a1ea62d8fce3ef54f9deae89230d0b52a5d.tar.gz |
* Allow plugins to add new types of tests that can be used in PageSpecs.
* Add a "conditional" plugin, which allows displaying text if a condition
is true. It is enabled by default so conditional can be used in the
basewiki.
* Use conditionals in the template for plugins, so that plugin pages
say if they're currently enabled or not, and in various other places
in the wiki.
Diffstat (limited to 'doc/plugins/conditional.mdwn')
-rw-r--r-- | doc/plugins/conditional.mdwn | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/doc/plugins/conditional.mdwn b/doc/plugins/conditional.mdwn new file mode 100644 index 000000000..f3398af57 --- /dev/null +++ b/doc/plugins/conditional.mdwn @@ -0,0 +1,41 @@ +[[template id=plugin name=conditional core=1 included=1 author="[[Joey]]"]] +[[tag type/format]] + +With this plugin, 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 [[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. The regular [[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. |