MetaMod

…by date, time, recurring time, GeoIP (country of viewer), browser type and language, user name, group, page within other component (e.g. Virtuemart), on-page text, article keywords, by article, section/category, domain, referrer…
…and much, much more!
MetaMod is a "Meta Module" - a module that includes other modules, according to a set of rules.
By installing the free GeoLite Country or City database from MaxMind, you can switch modules based on country names/cities/states etc.
Suggested uses:
★ VirtueMart: hide or show different modules at checkout, cart, product pages, categories etc.
★ Timed modules: recurring daily/weekly times and dates (great for radio/TV/broadcasting sites)
★ Languages: show different menus/modules based on the front-end language the user has selected (e.g. with JoomFish), or according to their browser language
★ Users: show a module for users registered for more (or less) than a certain time period, or target modules to certain users or groups
★ Switch between 2 modules for logged-in users and guests
★ Section/Category-specific modules: target modules according to the section/category of the displayed article
★ Domain & referrer: display different modules depending on which domain is being used for the page, or which site the user linked from
★ Browser detection: switch modules depending on the user's browser & browser version (e.g. show a different module for people viewing the site with Internet Explorer IE)
★ Control modules based on text found in the main component of the page
★ Control modules such as RSForm (show a different form based on where in the world someone is connecting from, etc)
★ Target modules onto specific pages in JReviews, CommunityBuilder, SOBI and almost any other component
★ Dynamically control the parameters of other modules on the page as well as whether the modules appear or not
★ and so much more!
Many more uses can be found in the documentation on the site, and in the forums. See you there!
VERSION NOTE:
★ v3.x is only compatible with Joomla 1.7/2.5/3.0
★ v2.x is only compatible with Joomla 1.5.
★ Please download and install the right module for your Joomla version.
RECENT IMPROVEMENTS
v3.13b (27 Nov 2012)
* fixed crasher in GeoLiteCIty support
* added support for VirtueMart 2.0.14; JomGenius now detects new pagetypes notify/recommend/manufacturer product listing.
v3.12 (19 Nov 2012)
* Now Joomla 3.0 compatible!
v3.11 (03 Sep 2012)
* Added compatibility with JoomFish for J2.5
v3.10 (23 Jul 2012)
* Added Categorizr support to JomGenius, for detecting mobile, desktop, tablet and tv devices.
v3.9
* Multiple improvements to JomGenius support for VirtueMart 2.x
v3.8 (14 Feb 2012)
* Added J2.5 support
v2.12 (31 Oct 2011)
* Virtuemart: improved page detection on sites using One Step Checkout
v2.11/3.7 (3 Oct 2011)
* Improved detection for "articlesubmit" page type
* VirtueMart: base
A must have for people using Joomla for more than just a website. There are many good useful Joomla extensions out there folks and this is right up there with vthe best!!!
Nice work.
This is a really great module. Works really smoothly and easy to use. I have used on 3 sites.
The only problem is that it leaves module position behind.(i.e. MetaMod module remains there invisibaly.)
This doesn't help you when you want to include module in blog layout but not in article layout. Because empty space (right column in my case) still remains there.
It would be great if author can add this feature.
Hi - very glad that this has been useful for you, and thanks for the review. If you're into advanced PHP and/or template work then it's possible to get around the way that the MetaMod is still published but with nothing in it.
If it's just a matter of an empty MetaMod showing up with some CSS styling around it, then that's generally not too hard to get around, especially from MetaMod version 1.5g. Just give the MetaMod an arbitrary css class suffix to prevent Joomla from styling the MetaMod itself, then work with the "style for included modules" and/or the "Style override for included modules" to make sure the inner included modules get styled correctly.
I'm working on MetaModPro which will completely avoid these issues and give even more control over module layout across the whole of Joomla, but because of the amount of ongoing work involved it's likely to be commercial. Watch this space!
I just tested this module in order to solve how to sort the content in a menu depending on the language.
This module works perfectly and is very easy to install & set up!
thanks for the great work! Luc
This was not so simple as Joomla starts a module box as MetaMod is published.... So you often comes to layout problems with an outer box for metamod modules, and then inner boxes for each indivdual modules.
The solution found is to give to metamod a false class suffix that don't exist in your CSS (nohilite or whatever you want as soon as it doesn't exist in your CSS).
Then the outer box of MetaMod is not styled, and you see either nothing, or the inner modules with their respective styles.
This module is simply a "must have" module in any Joomla site.
Everybodys happy and you're not tearing your hair out because you've found out at the last minute that your site doesn't work with ie6 and 23% of your visitors are still using it!
The module seems to be working perfectly.
I just didn't find where to put a file (Geoip)... Then I asked for support. Few hours after the answer was clear and precise.
This is just for Newbie like me... :)
If you try to install this module: There is a file(geoip...) you must put in a folder call (GEOIP).
You must create the folder (GEOIP) on the root of your web server... Don't try to find it ... Just create it.
"I hope it will help Newbie non native english speaking"
This module does it for me, and beyond that it is very flexible for many more different uses, compared to the meager purpose I use it for.
Extremely well thought out, well documented. A real pearl.
Installation was quick and easy and the configuration was a breeze. I initially misread the configuration directions so when the module didn't work as advertised, I emailed the developer, Stephen. He was prompt to respond and quickly helped me realize that I had configured the module incorrectly. After that, voila!
Now my module shows and works for everybody except for the users in that country. This is great and it makes me look like a genius for my client!
Thanks again Stephen!!
Once configured there is some simple scripting to do to implement the rules. You will however need to be able to understand very basic or simple PHP scripts but that is all.
It is powerful too being able to display any module in many different conditions.
Not perfect however, it still takes up module space even if the target module is not being shown. On my template it left a white space 'hole' in the middle of the page in the area that I was trying to make invisible according to my rules. Not for me in this case but I can think of many instances when this module would be very useful.
Yereverluvinunclebert
Hi Beededea, thanks for the review. There are just a few points I'd like to pick up on:
1 - yes, there's a patch you can make to a core Joomla script to make a list of modules and their IDs show up when you are editing the module, but it's not compulsory. And, it's only for the Joomla 1.0.x version of MetaMod -- the Joomla 1.5 version doesn't need it.
2 - yes, the ability to do some simple scripting is a bonus. There are some simple operations you can do without any scripting at all (GeoIP country selection and time/date limits on module display). There's also an increasing number of PHP recipes on the home page that need only minimal customisation in order to use them. When I get an enquiry from someone about how to do a particular task I usually add a new recipe to the list.
3 - module space when the target module isn't showing... sigh... this certainly can be a pain. Sometimes this happens, sometimes it doesn't, depending on the template. Thankfully there are a number of ways to tackle this, but it often depends on the template and CSS that you are using. One quick thing to try if this is happening to you is to add a "module suffix" to the MetaMod instance you are working on. Often, a random suffix added here fools the CSS into not allocating extra space for the missing module. This can also sometimes help if the included module isn't getting its CSS styling right - work with the module suffix for MetaMod, the module suffix for the included module, and the "style for included modules" in MetaMod to find a combination that works.
Sometimes though, if your template makes design decisions about whether to make space for a module position depending on whether there are any active modules in that position, MetaMod fools it into making space, when it really shouldn't (cos MetaMod will later decide not to put anything in there). In that case you need to do some work on the template. As a last resort, of course, you can always get MetaMod to put in an alternative module if it decides not to include anything else -- e.g. a nice graphic, google adwords, a link (advert) to some other page on your site, etc. Be creative! Often we forget that not everything on the site needs to be utilitarian...
beededea, if you e-mail me I'll see if it's possible to get around your spacing issues.
-- Stephen
Boo-yah!
Now if a person isn't a member, they see my mini-pitch to sign up. And if they are, they just get a simple Welcome "Name"
Fantastic module and really gives a membership site that personal though while communicating to two or more different sets of users.
Thank you!
Not being an expert with PHP I emailed the developer and within 8 minutes I got a reply and the code too. Now that's what I call support
Excellent module and support
After a little PHP trial and error it runs like I want it to.
Great work!
Great job by the developer!!!!!

