This plugin allows to create variants of page that can be switched depending on a URL parameter or in later versions also a value that is stored in the session.
The parts that shall be different for the different variants can be specified using an if/else conditional syntax that can be nested and repeated in order to offer maximum flexibility.
Inside the syntax all kinds of other syntax can be used, though there could be problems/unwanted behaviors in certain cases. There are known issues with the include plugin, the include plugin can't correct links inside the variants syntax and includes inside the variants syntax are incorrectly assuming they were in the top level and thus incorrectly adjusting header levels. Most probably this will be fixed later.
This is still an early version of the plugin with very few features. Even though this plugin could actually be useful in certain cases this is actually thought as a proof of concept.
<ifvar foo=bar> foo equals bar! <else> foo doesn't equal bar! </ifvar>
- [key] is the key that shall be used in the URL/session (in later versions)
- [value] is the value the value from the URL/session shall be checked against. If
!=is used, it is checked if the value does not equal the value from the URL/session.
- An optional else branch can be specified that is shown when the condition is not met
- Instead of a URL parameter store the choice in the session and offer a syntax that allows the user to view/set this choice
- Support larger/smaller comparisons instead of just simple equals/doesn't equal tests
- Some instructions like those that record link information should always be executed regardless if the content is currently visible in order to ensure correct backlink information (for the new pagemove plugin)
Please report bugs and feature requests in the issue tracker.