When you hand your finished project over to a client, WordPress and the site you have built for them will hopefully be working perfectly. However, it doesn’t take much for things to start to go wrong once an adventurous but inexperienced admin user gets let loose on the WordPress dashboard.

This guide covers some of the lessons learned from using WordPress for clients and should give you some tips on minimizing the damage that can be done, will making the WordPress dashboard a more user-friendly and inviting place for new users of the of platform.

Customising the WordPress Admin Area

Customising the WordPress admin dashboard with the intention of simplifying it is a great way to make life easier for end users and clients who are new to the platform. Removing superfluous buttons and restricting access to features that are beyond the scope of most users’ needs can help streamline the process for completing tasks in WordPress such as that of contributors who only add posts and admin users who focus on managing accounts.

Modifying the dashboard also presents a good opportunity to add some branding to the admin area. This branding could take the form of adding your logo as the designer and developer of the project, or alternatively the branding of the client could be used to help integrate it with other systems they might have in place.

Change the Default Welcome Message

While Howdy is a perfectly fine informal greeting that encapsulates the ethos of WordPress and its origins, it might not be 100% appropriate for some of the client sites you will be building. To create a more regionally suitable or professional first impression to your clients it can be a good idea to change it to something else.

Remove Howdy from WordPress

By using this code you can edit the message that is displayed in the admin bar, or by using the TM Replace Howdy plugin you can do a bit more including select from a list of ‘humorous’ greetings or build your own custom list of greetings.

While the Howdy greeting doesn’t hurt anyone, there are probably better ways to greet users in certain situations.

Simplify the Dashboard Menu

One way to make the WordPress dashboard more accessible to new users is to hide some of the menu items they won’t be using. The User Admin Simplifier is a free plugin that allows the admin user to do just that and hide menu items on a per user basis. This makes it an ideal choice for hiding confusing and potentially off putting menus, as well as troublesome items that could accidently cause problems to the site such as the settings and updates menu items.

SIMPLIFY THE DASHBOARD MENU

Ultimate Branding Plugin

The Ultimate Branding plugin from WPMU DEV allows you to completely white-label WordPress to totality rebrand it the way you want. You can remove all references to WordPress to remove the chances of your clients and end users getting confused by the use of the term. With the plugin you can easily insert your own branding through WordPress from the login page right through to the dashboard menus.

The plugin also allows you to add a custom admin bar with your own links and text and you can also add your own help and user documentation information. It is also easy to remove dashboard widgets such as incoming links and QuickPress which are most likely rarely used and a possible source of confusion and distraction.

This is a great premium plugin that is ideal for getting around the multitude of issues that arise when using WordPress to create an online solution for a client.

White Label CMS Plugin

This is a free alternative to the premium Ultimate Branding plugin and while they don’t contain the same features, there is a lot you can do with this one. With the White Label CMS plugin you can add your own logos to the WordPress dashboard and insert credit links back to your site.

White Label CMS

You can also hide the dashboard panels of your choice and add your own custom panels. The menus can also be easily hidden and there are default presets which are suited to the different uses the site might have been designed for including use as a website or a blog. The settings can easily be exported and imported allowing you to keep a default set that can be used each time you build a new client site.

Prevent Clients from Deactivating Important Plugins

In nearly all cases, when delivering a WordPress installation and website for a client you will use plugins. Even for a very basic site, the use of plugins will be necessary to quickly include standard website functionality and features like contact forms, spam-bot protected display of email addresses and many more features.

However, once you hand the finished website over to a client, there is a chance they or an end user might accidentally or intentionally deactivate or even delete one of the plugins that the site you delivered has been built around.

While any user role apart from admin does not have the ability to activate or deactivate plugins, if you are handing a project over to a client it is highly likely you will be giving them the all-powerful admin role. This then increases the chances that they might tinker with the plugins and ‘break’ the site in some way.

Thankfully, it is possible to deactivate the deactivate button for plugins on an individual basis. To do so simply add this code to your themes functions.php file:

add_filter( 'plugin_action_links', 'disable_plugin_deactivation', 10, 4 );
function disable_plugin_deactivation( $actions, $plugin_file, $plugin_data, $context ) {
	// Remove edit link for all
	if ( array_key_exists( 'edit', $actions ) )
		unset( $actions['edit'] );
	// Remove deactivate link for crucial plugins
	if ( array_key_exists( 'deactivate', $actions ) && in_array( $plugin_file, array(
		'akismet/akismet.php',
		'better-author-bio/better-author-bio.php'
	)))
		unset( $actions['deactivate'] );
	return $actions;
}

Edit the list of plugins to include the ones you don’t want to have a deactivate button and the work is done.

Prevent Deactivation of  Plugins

While this workaround does remove the deactivate button for a plugin, they can still be removed by determined users such as by deleting them from the server using an FTP client or finding the URL for the deactivation of a plugin. But using this approach does prevent the accidental or casual deactivation of plugins by admin users through the WordPress dashboard, hopefully preventing yourself receiving a number of support calls in the process.

Thanks to Steve Taylor for the code snippet.

Disable Theme Switching

If the site you have lovingly built for your client is focused around a particular theme, with all the options, content and functionality specifically tailored for that theme, having the client then switch the theme to see how their site might look could have disastrous consequences.

This is another workaround where code is added to fucntions.php and then a menu item is disabled, in this case, the themes button from the appearance sub-menu. Wiley admins can still mess with themes in other ways, such as deleting themes off the server via FTP but this at least restricts their options considerably:

Disable Theme Switching

add_action( ‘admin_init’, ‘slt_lock_theme’ );
function slt_lock_theme() {
global $submenu, $userdata;
get_currentuserinfo();
if ( $userdata->ID != 1 ) {
unset( $submenu['themes.php'][5] );
unset( $submenu['themes.php'][15] );
}
}

This code will hide the themes sub-menu for all users apart from user ID 1, who in most cases will be the person who setup the site rather than the client. This allows the designer to edit the themes should they need to, without having to edit this code in the fucntions.php file. To hide the themes menu for all users use this code instead:

add_action( ‘admin_init’, ‘wplg_lock_theme’ );
function wplg_lock_theme() {
global $submenu;
unset( $submenu['themes.php'][5] );
unset( $submenu['themes.php'][15] );
}

Thanks again to Steve Taylor for this code snippet.

Conclusion

These have been just a few solutions to issues I’ve come across while setting up WordPress installations for friends, family and clients. Some are just quick workarounds to edit the settings of WordPress to keep your work intact once you’ve handed over the reins. Others, such as the branding and white label plugins are better suited to those who want more control over how the WordPress admin interface will look and behave in order to create a more professional looking final product for a client.

Hopefully if you are delving into the world of offering web design services using WordPress as the platform of delivery, these tips will give you some ideas on how you can help prevent yourself receiving a flurry of support calls from inquisitive clients who just couldn’t help but click that button.


Author:

Joe has been using WordPress for many years and spends his time creating content for a wide range of websites and blogs. If you need compelling content for your blog, visit his freelance services portfolio now.

Siteground Hosting
Does WPLift load fast for you? That’s because we use Siteground for hosting, WPLift readers can click here to get up to 60% off hosting for your site.

Disclosure: This page may contain affiliate links for which we will receive compensation if a purchase is made.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Leave Yours +

12 Comments

  1. Wonderful tips Joe! I keep warning my over enthusiastic clients not to mess with plugin and themes, but sigh, some of them just wouldn’t listen.

    Now I don’t have to worry! :D

  2. Another great option to control what users can administrate is http://wordpress.org/plugins/webmaster-user-role/. Create a role between Admin and Editor

    • Thanks Gregg, I will take a look at that plugin.

    • We use this plugin on all the sites we build to create a Manager role that has all the capabilities of the Admin except for plugin and theme management. We do this to minimize the chance that a key plugin is deactivated or a plugin is added that conflicts with something that’s already being used in the build.

      James

  3. Thanks for the recommended plugins we have used a few but to see some recommended ones. In the past we have had serious issues with sites breaking after they decide to click the update link or break elements of the theme settings.

  4. Piet

    I expected a bit more from this article. Don’t get me wrong, it has some nice tips, but there is so much more possible regarding customizing and simplifying the Dashboard.

    To be honest, I don’t see how your tips actually simplify the Dashboard at all.

    As a matter of fact at the end of the month I will do a presentation on exactly this subject and if I remember I will post the link to my presentation here in the comments.

  5. Hi Joe,
    you pasted the wrong code in the section “Prevent plugins deactivation”.

    Adminimize (wordpress.org/plugins/adminimize) is kind of essential to clean up the dashboard and probably much more powerful than the Admin Simplifier.

    I created my own plugin to cover areas that Adminimize doesn’t reach: Admin Tweaks (wordpress.org/plugins/many-tips-together). It covers a lot of ground cleaning up the admin area.

    cheers!

  6. Great tips, especially simplifying the admin features a clients login has access to to limit the amount of things that they can break.

  7. Ester

    Great article. Very helpful tips. Thanks Joe!

  • Comments are Closed

Our Sponsors

SEND ME FREE WORDPRESS STUFF!

Join our Newsletter to Receive 6 Free WordPress Themes

We will also send you our weekly Newsletter packed with the Latest WordPress Content.

We will look after your email & Never Spam!

You have Successfully Subscribed!