High level overview
Chameleon is a Joomla component that gives you full, dynamic control over which Joomla template is used on your site, and when.
It is based around the concept of a Rule Engine. This means you design a series of rules which get checked, in turn, whenever Joomla generates a page.
Chameleon has a large selection of built-in checks which can be used within rules:
- date/time and recurring time (e.g. 09:00-11:00 every day)
- GeoIP country (the country of the site visitor)
- random probability
- site or browser language
- domain name
- referrer URL
- browser
- menu, menu item, or all-children-of-menu-item
- page type (covering all built-in Joomla page types, e.g. frontpage, category blog view, article, etc)
- individual article ids
- sections and categories (e.g. all articles inside a given section or category)
- components (e.g. all pages within a specific installed component)
- individual users
- Joomla built-in groups
- comprehensive Virtuemart support, including page types, product ids, category ids, manufacturer ids, number of items sold or in stock, which products are in the shopping cart, and whether or not a coupon has been redeemed
- PHP rule section so you can code your own rules, or copy and paste rules from the MetaModPro web site for interaction with many other Joomla components.
Depending on the results of these rules, Chameleon can perform several different types of actions:
- change to a different template for the current page
- redirect to another page on the site, or to an external URL
- remember the result of the rule in a session variable or permanent cookie, so that if the person views another page on the site, decisions can be based on what happened previously (i.e. you can continue to use the new template for the rest of the session)
- the “Default” menu item can be changed in order to simulate a different “Front page” of the site
- arbitrary PHP code can be run
Chameleon contains some other features to make life easier when dealing with templates:
- 1-click template duplicator (experimental) which makes it possible to make a second, independent copy of most types of templates
- 1-click downloading of the (free) MaxMind GeoIP Country and GeoLite City databases for use in your rules
- You can change the site default template while editing a Chameleon rule
- You can jump directly to the template editing screen for any installed template while editing a Chameleon rule
Chameleon vs. ChameleonLite
ChameleonLite is a free version of Chameleon. The only difference between the two products is that ChameleonLite does not have an interface for most of the built-in checks listed above. This means that you need to code most things in PHP.
Many of the PHP recipes designed for Chameleon’s sister product MetaMod actually work very well in Chameleon too, so this is not as limiting as you might think.
|