If you’ve been using WordPress for a long time, you probably feel at home in the WordPress dashboard. But think back to the first time you logged into your trusty wp-admin…were you able to instantly navigate your way around?
Maybe if you’re technically savvy. But if you’re building WordPress sites that you’re going to hand off to clients, they may not be as technologically fluent as you are.
So to help them out, it’s a good idea to extend your focus beyond just the front-end appearance of their WordPress site. You should also take a little time to customize the WordPress dashboard for your clients to make their lives easier (and to keep them from breaking things!).
In this post, I’ll dig into how you can customize the WordPress dashboard by both adding and removing some functionality. Note – this is about customizing the existing WordPress dashboard, not creating a new dashboard from scratch. That’s a whole different can of worms and more than most clients need.
Let’s get started with some of the manual tricks you can employ…
We’ll start at the beginning…the actual entrance to your clients’ dashboards:
The default WordPress login page is generic and WordPress branded. Customizing the WordPress login page allows you to add a white-label logo (either your own or your client’s) as well as unique styling and added functionality.
To make minor customizations like swapping out the default WordPress logo for a custom logo, you can do it manually. For example, to change the logo, you just need this code snippet to the theme’s functions.php file:
Where “site-login-logo.png” is the link to your actual logo.
You can view a full list of manual customizations at the WordPress codex.
But if you don’t want to do things manually, you can also use one of these plugins to customize the WordPress login page. My personal favorite is ThemeIsle’s Custom Login Page Customizer, but there are several good ones in Ahmad’s list.
No matter how much you simplify and customize the dashboard, your clients might still get tripped up. Adding in-dashboard tips can provide guidance to help them avoid any potential pitfalls.
There are two ways you can add tooltips to your client’s dashboard:
To add them manually, you can follow the code instructions from the WordPress codex. For example, to add a simple dashboard widget, you just need to use this code. Ideally in a custom plugin (though it should still work if added to functions.php):
‘example_dashboard_widget’, // Widget slug.
‘TITLE OF YOUR WIDGET HERE’, // Title.
‘example_dashboard_widget_function’ // Display function.
add_action( ‘wp_dashboard_setup’, ‘example_add_dashboard_widgets’ );
// Display whatever it is you want to show.
echo “TEXT OF YOUR WIDGET HERE”;
Just make sure to replace the placeholder text with whatever you want your widget to communicate. To get even more creative, you can find a few more uses in the WordPress codex.
Further down this post, I’ll also showcase a plugin that can simplify the process of adding tooltips.
The WordPress dashboard sidebar is filled with menu items to help you make changes to WordPress. But your clients probably don’t need that much power. So to save them from themselves and tidy up their dashboard, you can remove some of the unnecessary menu items.
Some common targets for menu removal are:
But you may have other menus that need removed which are specific to your client.
Removing menu items is as simple as adding some code to the functions.php file. For example, to remove the Tools option, you would add this code:
You can remove other menu items in a similar fashion. Check out the WordPress codex for a fuller explanation of the code.
Note – this only removes the menu link. It doesn’t restrict access beyond that. So your clients could still technically find themselves to a removed section if they get their via a direct link.
Another way to limit what your clients can do in their dashboard is to set up custom user roles. Depending on your exact relationship with your client and their knowledge level, you may or may not want to give them an account with full admin access.
Or, you may need to set up additional accounts with less access for other members of their team if your client is going to grant access to multiple people.
For a full list of permissions granted to each user role, you can, once again, go to the WordPress codex:
And if you want to change the default user roles, you can easily do so with a plugin called User Role Editor.
By default, your clients will be able to edit theme and plugin code directly from their dashboard. Even if you’ve removed it from the main dashboard menu, they could still find themselves in the code editor by some twist of fate.
So to be safe…you should disable code editing unless you know that your client is savvy enough to handle that power.
To disable theme/plugin code editing in WordPress, you just need to add one line of code to the wp-config.php file:
If you’re interested in where this code comes from and exactly how it works, you can check out its entry in the WordPress codex.
If you just want to provide a snazzy style, you can consider adding an admin theme. These “themes” are technically plugins, but all they do is change the styling of the WordPress dashboard. Some do change functionality as well, so make sure any functionality additions are desired.
Check out Oli’s post for some great free WordPress admin themes.
If you don’t want to dig into the code yourself, there are also some plugins which are designed for this exact purpose. I mentioned a few niche plugins above, but here are some other great options which don’t fit into a specific category:
WP Help makes it easy to add a detailed knowledge base inside your client’s WordPress dashboard. Using custom post types, you can create detailed documentation for every aspect of your client’s dashboard. Your client will be able to access all of this information without needing to leave their wp-admin area.
In my opinion, it beats out trying to code custom dashboard widgets for all possible scenarios.
White Label CMS is designed to make it possible to do pretty much everything I talked about above…without having to dig into code. It’s a plugin geared towards helping developers simplify WordPress for clients.
You can brand the dashboard, add a custom welcome dashboard, restrict access to certain menus, remove/insert panels, add custom logos, and more.
If you don’t want to spend a lot of time customizing the dashboard for your clients, this is the plugin for you.
WP Admin UI Customize lets you dig down deep into the dashboard to customize user roles, menus, meta boxes, the login page, and lots more.
The plugin is jam packed with settings, so it, like White Label CMS, is a good “all in one” solution for customizing the admin dashboard for your clients.
You can definitely go deeper with customizing the WordPress dashboard. For example, Happy Tables and Rainmaker have created client dashboards which you would never guess were built on WordPress.
But those solutions are far more involved than the average developer needs to go. If you’re just trying to make the WordPress dashboard feel a little more friendly for your clients, these code snippets and plugins will help you do just that.