0

I need to add two custom user roles that have different capabilities. The two user roles are meant for correctors, the only difference is that one corrector should only have access to the posts of our custom post types, while the second one should have access to all the posts.

Neither of them should be able to upload media, create or delete posts (of any post type). They really should only be able to read a post, correct some errors (typos etc.) and save the changes. The changes should then need to be accepted by an admin or an editor to be published.

How could I do this?

Please also give a possibility to add the dashboard to that user role. Currently I'm using the "collaborator" user role and I did not find a solution to display the dashboard for that user role.

Many thanks in advance!

0

To add a role see: https://codex.wordpress.org/Function_Reference/add_role

To add capabilities see: click add_cap link on the bottom

A list of all caps see: https://codex.wordpress.org/Roles_and_Capabilities

For all the roles you can also use them for different post types.

if post type is "books" edit_pages -> edit_books.

N.B.: This setting is saved to the database (in table wp_options, field wp_user_roles), so it might be better to run this on theme/plugin activation

  • Thanks. I have now limited the access. However one thing remains on my to-do-list: How can I disallow the correctors to publish their changes? At the moment, they can click on Update and their changes are directly overtaken and published on the website. As some articles contain small code snippets, it would be great if an admin has to review the changes before publishing them so that code errors, that occured while correcting typos, could be fixed before the website has an issue. Hou is this possible? I already diabled the publish_posts, but that's not what I need :/ – Sam Sep 26 '16 at 22:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.