Manage WordPress User Roles: Contributor

The more I outsource content writing, the more it gets annoying to upload and publish the articles on my sites. Therefore I recently started to give my writers (virtual assistants) access to my sites which are all based on WordPress.

While WordPress already comes with different user roles out-of-the-box, it was necessary to make some tweaks so the virtual assistants would only see the functions they really need to do their job.
After having tried most of the popular WordPress user roles manager plugins such as Role Scoper, User Access Manager, Capability Manager and User Role Editor I decided to go with Adminimize. Adminimize let’s you hide unnecessary items from the WordPress backend for each user role.

In my case I decided to assign the WordPress Contributor role to my content writers so they can only create, edit and delete their own posts. This way any post from them is held for moderation by me before it is published. Fore more details about the different roles and capabilities read here.

These are the items I’ve deactivated for the WordPress contributor role:

  • Global options
    • Favorite Actions
    • Screen-Meta
    • Screen Options
    • Contextual Help
    • Admin Color Scheme
  • Menu options
    • Dashboard
    • Media
    • Comments
    • Tools
    • Settings –> some plugins
  • Write options
    • Help
    • Screen Options
    • Excerpt
    • Trackbacks
    • Custom Fields
    • Discussion
    • Some plugins
    • Additionally I added some custom CSS IDs in the section „Your own post options“ to hide a custom plugin

Now this would have been already the perfect solution if there wasn’t the downside to the Contributor Role that contributors aren’t able to upload images for use in their posts. Luckily there’s an easy solution to this, simply add the following code to the theme’s function.php:

if ( current_user_can('contributor') && !current_user_can('upload_files') )
	add_action('admin_init', 'allow_contributor_uploads');
 
function allow_contributor_uploads() {
	$contributor = get_role('contributor');
	$contributor->add_cap('upload_files');
}

Credit for the fix to allow WordPress contributors to upload images goes to Ryan Marganti from SoulSizzle Design.

Now my virtual assistants are presented with the following clean backend when logged into my WordPress sites:

2 Kommentare zu „Manage WordPress User Roles: Contributor“

  1. I’ve used Role Scoper for quite a while, but I’ve got to admit that Adminimize looks very interesting!

    Will give it a try soon :)

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht.