Joomla! modules are equivalents to WordPress widgets – generally speaking, these are extensions which are responsible for generating a fragment of the subpage according to the user’s needs and the extension’s functionality.
In both cases, each extension has its own settings that affect the appearance of the information displayed by the extension:
Module positions/side panels are used to display these fragments. In the case of WordPress, we manage widgets on a single subpage of the dashboard:
We move widgets from the list to a specific sidebar and configure them straight away. Additionally, a list of all available widgets appears immediately.
In Joomla!’s case we have a list of modules:
and make assignments while adding/editing the module:
Then we choose the type of module after clicking the “Add module“ button:
The crucial thing is that with Joomla! when adding/editing module, we may perform the following operations that are not natively available in WordPress:
- assign the module to the appropriate menu item (for WordPress we would need the Widget Logic plugin)
- determine whether the module has to be displayed at once or, for example, after a specific time (in WordPress once again the Widget Logic plugin is useful)
- we may disable displaying the module title (to do the same in WordPress we need to use a plugin or filter)
- we may display a widget for a specific group of users (again, Widget Logic may help us with this)
- we may copy the entire module (of course, there is WordPress plugin that offer the same functionality)
Widgets in WordPress are managed very nicely, as long as we have several sidebars and not too many widgets. If we have a large number of widgets it becomes easy to be confused. The major disadvantage of widget managing in WordPress is the fact that the interface is adapted for less sophisticated themes and websites. At the moment when we have several widgets installed and dozens of sidebars, widget management becomes tedious. Some changes are being brought in with the new WordPress 3.8 dashboard – sidebars are now displayed in two columns:
Additionally, widgets may be attributed to the panel without moving it via drag’n’drop:
Since WordPress is being increasingly chosen as a platform for more elaborate websites, we may expect further improvements in this regard in future releases.
With Joomla!, we are dealing with a complex system that provides us with solutions to the problems we meet when building a website with lots of modules – but with a less convenient interface than that provided by WordPress. The option I miss most is one that allows a quick comparison of widget settings – we need to open two separate subpages in order to view settings, whereas in WordPress it is enough to simply open two blocks on the same page.
From the developer’s point of view?
In WordPress there is no option to easily define an additional CSS class for widgets – in Joomla! we have a module class suffix option, which lets us define the CSS class that will be added to a particular module. Thus, it allows you to easily change the appearance without affecting the appearance of other instances of a given widget. One of the solutions in WordPress is to use the dynamic_sidebar_params filter.
In both CMSs we may easily get to the title and content of the module/widget – in WordPress we may do it by using the widget_title and widget_text filters (if the widget supports this filter). On the other hand, in Joomla!, we do it with an appropriate PHP code in the function that generates the module encasement, where we have access to the title and content fields.
There are some little things that can be annoying – the length of the module title in Joomla! is limited to 100 characters – sometimes, when we want to achieve some required effects, this amount is not enough. In WordPress such restrictions do not exist; this is caused by differences in the method used for storing information about extensions that these CMSs employ.
The topic of modules and widgets clearly shows the boundaries of Joomla! and WordPress. WordPress has a convenient widget administration panel, but it is convenient only to a point. The administrator panel in Joomla! is less convenient, but it works well with more modules and offers many more built-in functionalities. In most cases, it is possible to gain such missing functionalities in WordPress, however, it may be argued that perhaps no-one has yet managed to solve the problem connected with managing a large number of widgets on the page (there are various interesting solutions; for example, sidebars dedicated to subpages or even whole editors for subpages, but these are still not ideal solutions).