Just on a side post to our usual jQuery posts I have been using WordPress quite a lot, especially developing it for clients and here are some tips. Out-of-the-box, WordPress is a fairly simple CMS for anyone to learn. But for your non-tech savvy clients it could be a nightmare and a potential disaster to the site you have just built. There are of course many plugins that will achieve the same as these snippets, but with code you get the added control and security, and, in most cases, will not need to be updated.

Related posts:

1. Disabling Plugin Deactivation

This snippet is particularly useful if you have given a client plugin activation/deactivation privileges (allowing them to add new plugins themselves), but the site you have built requires some core plugins to function and should never be deactivated.
The code below will remove the ‘Deactivate’ links from whichever plugins you deem fundamental as well as removing the ‘Edit’ links from all plugins.

2. Disabling Theme Changing

The code below will remove the ‘Appearance’ menu option from the Dashboard. Just like the Plugin Disabling code above, you really don’t want your clients tinkering or experimenting with any theme changes.

3. Disable Top-Level Menus from the Admin Panel

With this snippet you can hide whichever Top-Level Menu (Posts, Media, Links, Tools…) you need to. All depends on your client’s requirements.

4. Disable Submenus from the Admin Panel

This code will help if your client doesn’t need the drastic action taken by the above snippets, and only needs some key sub-menu items disabled/hidden.

5. Restrict Admin Menu Items Based on Username

This snippet will help if in any case you want to restrict client access to certain Top-Level menu items, but you still want to maintain the full menu for the main administrator.

6. Remove Meta-Boxes from Posts & Pages Editor Screens

Probably the main reason you chose WordPress is for your client’s need to begin with. Publishing posts and pages are more than likely key to their business. To help avoid any confusion from within the posts/pages editor screens it could be helpful to remove unused meta-boxes (custom fields, recent comments, post tags…).

7. Remove Pages Columns

Adding this code allows you to remove whichever column from the ‘Pages’ page you feel are not necessary to your client.

8. Remove Posts Columns

Similar to the snippet above, this code will remove columns from the posts page.

9. Removing Default Widgets from the Dashboard

This snippet will remove whichever widget you define from the Dashboard. The majority of the default Dashboard widgets may not be necessary to your non-tech client and could potentially is a disastrous distraction.

10. Create Personalized Dashboard Widgets

This snippet will create a simple ‘Hello World’ widget, and can be easily edited to your own specifications.

Stay tuned for part 2 later on in the week!

Sam Deering is a Front-end Web Developer who specialises in JavaScript & jQuery. Sam is driven and passionate about sharing his knowledge to educate others.

Free Guide:

How to Choose the Right Charting Library for Your Application

How do you make sure that the charting library you choose has everything you need? Sign up to receive this detailed guide from FusionCharts, which explores all the factors you need to consider before making the decision.

Special Offer
Free course!

Git into it! Bonus course Introduction to Git is yours when you take up a free 14 day SitePoint Premium trial.