Well, that’s pretty impressive. A scant four months following the release of Joomla! 3.5, Joomla! 3.6 comes flying out of the gate with more than 400 fixes, improvements and enhancements, along with some pretty big step ups in the UI department. Version 3.6 represents the seventh iteration of the current major release, Joomla! 3, so the standard upgrade path applies and users can enjoy a quick and smooth one-click install via the built-in updates feature.
Now I’m sure you’re looking at the number of fixes and thinking "yeah, right!", and it wouldn’t be an unreasonable response; there was a year’s gap between Joomla! 3.4 and 3.5, so getting a major update a few months after the last one is quite unprecedented in the modern development cycle. Not to mention that it was only a short time ago, the beginning of June to be exact, that the PLT first discussed an early release of Joomla! 3.6 for the express purpose of introducing an upgrade to the Joomla! Update component that would allow for the re-installation of the core, untouched Joomla! files at the touch of a button, reverting any damaging changes made by wayward hands, with the major feature updates that were planned for version 3.6 were instead moved to the Joomla! 3.7 release.
It seems then that since then the production team have decided to go all-out, offering up a new suite of features that individually don’t seem to overwhelming, but taken as a whole they represent a significant improvement in a wide range of areas, for both users and developers. There’s also been some encouraging developments in terms on marketing and usability, but we’ll get to those additions shortly.
Before that, let’s take a closer look at that number. You know, the obscene amount of fixes included in the 3.6 release (that was actually cited by the official description of Joomla! 3.6, so not just a number we pulled at random!). Being the cynics that we are, we couldn’t take this info at face value; after all, 400+ fixes sounds like they’re building an entirely new CMS rather than iterating an existing one! But after poking around the GitHub repository for the Joomla! project, we’ve realized that the claim wasn’t hyperbole; for this release alone more than 700 issues have been closed. Now, we should of course clarify that that’s 700 issues, and not "700 incredible new features", but the mix of bugfixes, changes and upgrades is still an amazing feat for such a short release cycle; it seems that rumors of Joomla’s demise have been greatly exaggerated! If you’ve got a few days to spare and fancy checking out all the issues that have been closed, then you find the full list on the Joomla GitHub Repository .
Spreading the Joomla Word
Before we dive in a take a look at what interesting changes users and developers can look forward to, it’s worth taking a moment to appreciate the amazing work put in by the marketing team for this release. There’s a standard, accepted way of doing updates in CMS circles; beta, release candidate, release, post on the blog saying it’s released, and download links. Functional, but lifeless. This time around (and for the first time to my knowledge) the marketing team and a number of volunteers have created a dedicated landing page for Joomla! 3.6 , boasting detailed descriptions of the most important changes, along with categories for users, developers, designers and integrators, so you can find out what big additions each field can enjoy in this update. It’s a great way to get to know Joomla! 3.6, and includes some promotional images that can be used to spread the word. Check the site out, it’s really worth a look, and a big well done to the team for their effort!
Now, without further ado, let’s see what this update has to offer:
What’s new for Joomla! 3.6 users?
We’ll start by looking at the additions that’ll benefit Joomla users the most, as opposed to developers. The focus of this release seems geared towards usability, so don’t expect any extensive features like the Media rework that’s expected to roll out with Joomla! 3.7. However, that doesn’t mean there’s nothing worth looking up, with plenty of quality-of-life improvements that will make day-to-day management that much easier:
Joomla! Updates…updated
The community’s desire to see this update implemented as fast as possible is what initially spurred the decision to make an earlier jump to Joomla! 3.6 than anticipated, though the development team have expanded their plans quite heavily since then!
So what does it do? Basically, the additions are two-fold; first, the option for updating a Joomla! installation by uploading an update file, rather than automatically downloading the update via the Joomla! admin area, has been reintroduced as requested by the community. This may not be necessary for the average user who’ll be quite happy to continue updating automatically, but flexibility has always been Joomla’s focus and there are plenty of users who’ll take advantage of this alternative update method.
Secondly, an option has been added that will reinstall the core Joomla! files at the touch of a button, reverting any changes. This will be particularly useful if you (or an overzealous admin!) have been playing around with the core files and accidentally broken something; now you can do the Joomla! equivalent of a hard reset, taking all the base files back to the standard ones you’d find in a new install.
New Menu options
One of the easier changes to notice once you’ve completed the upgrade; a new back-end menu option for the com_menus component. Now, as well as the created menus and a general "Manage" option, you’ll also see a new option called All Menu Items. As you can guess, this new view incorporates a list of all your menu items from all your menus on one screen with an easy-to-follow inheritance tree layout to help you visualize your menu structures. This useful addition is great if you’re running multiple menu items with the same name; by using the search option in this view you can quickly see duplicate menu names across all your menus at every level.
ACL extended to menu types
Continuing the theme of improved usability and control, there’s another great addition related to the back-end menu. In Joomla! 3.6 you can now allow or block access to a particular menu for a particular user group, giving admins the ability to fine-tune menu accessibility to match each group’s requirements. You’ll find the options related to this feature in a new tab called Menu Permissions that you’ll see when creating or editing a menu. Included are the same additional ACL settings that you would see in other extensions’ permissions screens, including:
- Access Admin Interface – Allows the user group to access the admin area for the menu to change permissions and the like; generally reserved for admins or super users.
- Create – Allows the user group to add content (i.e. new menu items) to the menu.
- Delete – Allows the user group to delete menu items.
- Edit – Allows the user group to modify existing menu items.
- Edit State – Allows the user group the ‘state’ of content; that is, whether a menu item is published or not.
This feature will be very useful for managing what user groups, such as Publishers, can access in a given menu, allowing for unique menus to be made available for each user group specific to their needs, reducing the risk of inadvertent errors making a mess!
Menu Item Filter for Modules
There’s usually a point when building a large, complex Joomla! site with a ton of modules where you realize that you’re starting to have trouble keeping up with which modules are where; at this point, filtering becomes almost essential. This allows the administrator to limit the number of modules that are visible in the com_modules component to only those that are published, or of a certain type.
Joomla! 3.6 adds a brand new filter, and its a pretty useful one too! It’s now possible to filter modules by page (that is, by menu item). So if, for example, you’re working on your homepage layout you can instantly filter the listed modules to display only those that are assigned to the homepage. It’s a great way to stay on top of things if your site is on the large side and is running a large amount of modules. If, like me, you’ve ever found yourself hunting slowly through page after page of modules trying to find that one module from that one page, then you’ll appreciate this simple but useful additional filter.
Expanded UX
Ease of use is the name of the game in this update, and nowhere is this more apparent than in the number of aesthetic and functionality changes designed to improve the user experience. There’s scrollable back-end menus, so if you’re running a huge site with a ton of components you’ll still be able to access every one of the options without the hassle of the menu extending beyond the bottom of the viewport. There’s also a new "Filter Users by Last Visit Date" option in the backend to track and manage abandoned or active accounts, new bulk options for the tag and category manager to allow for instant publication or archiving of multiple entries at once, plus a toggle to hide unpublished modules in the menu item edit view, just like we previously could with unassigned modules. There’s plenty more additions in this area that will make for a more efficient work flow and a more intuitive interface. Given that one of the common complaints newcomers have about Joomla! is its complexity, these changes will go a long way to remedying this issue.
…and more!
To go though every new addition for users in Joomla! 3.6 would take a rather long time, but there’s still some minor upgrades that will enhance the overall experience. If you like to use the contacts category view you will notice a new design improvement allowing for a contact image to be uploaded which will be visible in the contact list, and for content creating the ability to create categories on the fly has been added that works when creating articles, contacts, newsfeeds or banners.
It might not seem like something to write home about, but it’s simple extras like this that evolve the core Joomla experience; for people new to the CMS minor issues can put off users before they’ve had a chance to get acquainted with the flexibility Joomla! offers, so anything that removes such stumbling blocks is welcome. Previously when writing a long article (like this one!) it was plain irritating to finish it up only to find that that category you wanted to assign it to hasn’t been created yet. This used to mean that you’d have to save the draft, close the page and switch over to the category manager to create the new category before heading back to the article draft to complete the category assignment. Now, you can create categories without leaving the article screen; simply click on the category drop-down list, which will display a list of the available categories and, crucially, a search bar. When entering a name into the category search bar, if no category of that name is found then a new option will appear underneath the search to Add new Category (name); hitting enter will automatically create the category and assign the article to it. It’s fast and logical, which suits Joomla to a T.
What’s new for developers?
So users have got a lot of quality-of-life improvements to enjoy in Joomla! 3.6, but shouldn’t developers get a little love too? The answer is of course they should, and in fact in my opinion there’s actually more changes for developers than for users in Joomla! 3.6, including:
Back-end forms new features
Two new features have been added related to back-end forms that are defined in XML files. First of all, the showon feature in fieldsets is now available in component config. This small feature allows you to show/hide part(s) of your XML based on the value of another field, providing an opportunity to create cleaner, more user-friendly configuration screens.
The next change is in my opinion one of the best improvements in this release – ** Sub Form Field**. If you are a developer then it’s likely you’ve often found yourself fighting with advanced forms in Joomla!. Sometimes it’s necessary to combine multiple field types like text, input and label in one form, and then repeat this process several times for different options. With the new update you can now instead create a template for your control and use it in repeatable fields. In other words, instead of tediously repeating a process, you can just create a standardized XML form and nest it in another XML form, allowing you to reuse your code in multiple forms when the functionality lines up.
Easier Database queries
In the JDatabaseQuery class three new methods have been added to improve database querying, called:
- extendWhere
- orWhere
- andWhere
which allows to build more advanced database queries without worrying about the glue parameter being locked in its first use. It’s a small, but significant addition, and notable also because it demonstrates the commitment to backwards compatibility of the Joomla! development volunteers, who introduced these alternative methods to avoid making changes to the base Where method (which would’ve broken backwards compatibility).
SACC/SCSS support in the template manager
Hold your horses; this doesn’t mean that Joomla now has built-in parsers for these files. Instead, you can now edit these files directly from the Template Manager screen. Before this update these types of files were not recognised properly which now has been fixed.
A suite of minor improvements
The above changes are ones that really caught my eye, but the sheer amount of fixes in this release is staggering. Other improvements worth a mention include better storage of dynamic JavaScript variables and faster validation performance, as well as a bunch of new features like reverse caching support via Varnish or NGINX and updates for the CodeMirror editor and the jQuery library.
Summing Up
It should go without saying, but despite its length this list includes only some of the major changes shipped in Joomla! 3.6; with more than 400 improvements there’s still a lot more to discover. If you’re interested in finding out more about the other changes then you’ll find quite a few detailed on the aforementioned Joomla! 3.6 landing page, but if you’re after a more detailed overview then the best option is to check out the discussions on the GitHub repository.
Considering it was initially looking like a stop-gap between Joomla! 3.5 and 3.7, the number of fixes and improvements that came with 3.6’s release is truly astonishing, and it really seems that the Joomla Development Team are taking community feedback on board when setting their future course. As it stands, I’m now even more excited for Joomla! 3.7; there’s a lot of ground to make up, but Joomla! is now setting the pace.