Joomla 4: Customising Admin Dashboards
If you’ve taken a look at Joomla 4 Beta, you’ll have noticed large changes in the layout of the Administration area in the backend of the site. The new Admin Dashboards form part of the restructuring of the Joomla 4 UX and are designed for site managers to optimise their site management experience for themselves or clients quickly and easily.
Joomla 4 Dashboards
When you log into the backend of Joomla 4, the first thing you’ll find is that the admin experience has changed significantly compared to earlier versions of Joomla. The traditional administration menu across the top of the screen has now been moved to the sidebar.
Various items have been regrouped and repositioned compared to Joomla 3, mainly from an access control level perspective, but additionally to make the administrator areas more flexible to configure.
The groupings of the dashboards make sense once you start using Joomla 4, but if you’re a long term Joomla user, it shouldn’t take you long to work out where a few things are now hiding. The dashboards closely match the Joomla 3 admin menus, with a few notable exceptions:
- Content’s now first on the list, followed by Menus. Users menu has moved down the list, and System is second to last before Help.
- Extensions have moved into the System menu group.
There’s a number of default dashboards in Joomla 4’s backend. These break down modules into areas of functionality. You’ll typically see the various items shown on the dashboards reflected in the menu structure on the sidebar, but
Similar to the Joomla 3 Control panel, the Home Dashboard presents you with important modules to get you started administering your Joomla 4 site. These include:
- Notifications - shows you when there are Joomla and Extension updates available, privacy requests to action, and whether overrides are up to date (another new feature in Joomla 4).
- Shortcut modules allow you to edit aspects of the site straight from the dashboard, and system shortcuts to perform global check-in, clear the cache or change the global configuration.
- Admin modules like Logged-in Users, Latest Actions, Site Information
- Optional modules you can choose to turn off later like the ability to install Sample Data
The content dashboard lets you manage content, modules and settings for features like workflows and custom fields. Additional modules in this dashboard show you statistics on features like recently added and popular articles.
This dashboard is by default quite clean, with modules to manage menus and menu items, as well as a list of shortcuts to each menu on your site.
Unlike the Menus dashboard, the Components one is likely to get quite busy as you go about installing components on your site. Each component will typically end up with a module displaying on the components dashboard.
The Users dashboard lets you manage users, displays who’s logged in and allows you to manage user notes.
In the Users menu, you’ll notice that there’s a second dashboard available for Privacy when you expand the Users menu. This is an example of where you can have dashboards inside particular menu groups, and you’ll see this more as developers release components for Joomla 4.
You might for example find that components like a form component or an e-commerce component have their own dashboards showing the number of submissions or a module showing the status of orders. More information for developers on adding dashboards is further in this article.
In the Users menu, you’ll also find features not displayed on the dashboard, which is always something to be aware of. With the ability to customise your dashboards by changing the published state of Administrator modules you might find that an administrator of your site turns off a module inadvertently. The menu items typically will remain in place, so look there if you can’t find something you’re expecting to see on a dashboard.
The Privacy dashboard ties into the improved Joomla 4 Privacy features. The Privacy Requests module shows any privacy requests visitors make to have data removed from the site. The Privacy status module flags a number of configuration points on your site if you’re wanting to make sure your site is compliant with various privacy regulations.
Adding a module
On each dashboard, there’s always an area for you to click on to add a module to the dashboard. This is available to Super Users and Administrators to allow them to customise the dashboards.
When you click on the add module area, you’ll be given a list of available modules that you can include on your dashboard. These are configured like any other module, so when you select the module, you’re then taken to the configuration page for that module where you can customise how you want it to appear on the dashboard.
Sorting Modules on the Dashboard
As at Beta 7 (the current Joomla 4 Beta at the time of publication), the ability to reorder the modules on the dashboard needs to be done by going to System > Administrator Modules, then reordering the list like you would be familiar with from Joomla 3.
You can also edit a module on the dashboard and you’ll find the ordering as a parameter on the module settings.
For those not so familiar, when you’re on the module list, click on the sort icon (second column in the list) and then you’ve activated sorting and you can then drag the ordering of the modules in a particular position to how you want them to appear. When you then return to the dashboard, you’ll see the modules rearranged in the new ordering.
If you’re a developer looking for a way to further improve the Dashboard sorting interface, some issues on Joomla’s Github Issue Tracker are full of suggestions on way to use Dragula to allow drag and drop module sorting on the dashboard (#28606) as well as looking to improve the masonry layout used for the dashboards to allow a full-width column option (#25952).
I don’t want to learn a new menu structure…
Let me keep the Joomla 3 Administration Menu!
Sure. You can skip all the new dashboard functionality if you like.
The admin menu has an alternate view available that restores the Joomla 3 menu structure.
To change to the alternate menu, go to System > Administrator Modules. Find the Admin Menu module, and open it to modify the settings. The Choose Preset parameter will then let you switch to another menu preset titled “Preset - Alternative Main Menu” and once you save and close the module, you’ll have switched the administrator menu back to match the ordering you’ll be familiar with in Joomla 3.
Of course, having become a big advocate of Joomla 4 in the past year, I’d say give the new dashboard a trial as it provides you with some creative flexibility to help with managing your site.
Add Component dashboards in Extensions
Adding a dashboard when you’re a developer creating a component is quite straight forward.
In your component’s XML file, you simply need to add a section for dashboards, and then inside that define the dashboard. By creating a language string for the title of the dashboard, that will allow it to be translated. You can also define the icon for the heading for the dashboard page using any font awesome icon.
When you create a dashboard in your extension XML file, it will trigger an administration module position to be created that is prefixed by Cpanel- and that becomes the position for you to assign the modules to so that they appear on the new dashboard.
So if your extension created a dashboard with the name example, then you will have a module position Cpanel-example that you can assign modules to in your manifest file for your extension package.
You can see the dashboard tags that trigger the Privacy dashboard in the component XML file (administrator/components/com_privacy/privacy.xml).
For more information on adding dashboards to your components, refer to the documentation on Manifest Files which will be updated as the dashboard feature continues to be refined.
Awesome, thanks for including the part about the custom component dashboards, that's awesome. Hopefully that encourages developers to make shortcuts for us.
Would love to chat to you about enhancing it within the developer space. Cheers.