[Photo: Kilinochchi market - chamira @ Flickr under Creative Commons By-Attrbute licence - feel free to use it]


The syntax for the {loadmodule} code has changed slightly as Joomla 3 is using a different Module naming convention in back-end, at least for the core Modules.


The syntax used to be {loadmodule mod_xxx}

It can now be {loadmodule xxx}, where the xxx is the Module Type name in lower-case.

So, to embed the login module in an article, you would use {loadmodule login}.

However, you can still use the older format, although the behaviour is inconsistent.


Module Type name

Things are further complicated by the fact that 3rd party developers still use the older format for naming their Module Type, that is, with the 'mod_xxx'.

The only way to check the correct Module Type name for the module you intent to embed, is to go in to the Module Manger and then the Modules edit screen, and look at the top bar.

For example, the extension BT Google Maps has 'BT Google Maps' as its Module Type name in the Module Manager listing:

Module Type name in Module Manager


But, going in to the edit screen, we find its correct Module Type name 'mod_bt_googlemaps':

Module Type name in Module Edit screen


How useful is it?

Interestingly, for most cases you do not need to allocate the module to all pages, just the page or category blog the module is going to be used in.

loadmodule can only be used for one module instance because we are using its unique Modue Type name - and every instance or duplicate of the module will stil have the same Module Type name.  However, the same module can be embeded in numerous pages.

If you want a number of differently configured modules of the same type, then loadposition is the best option.


Finally, if you find any errors in this blog post or something is unclear, please leave a comment below.