How to Restrict WordPress Users to Editing Posts in a Group

One PublishPress user asked us whether this setup was possible in WordPress:

  • They have 30+ departments in their university.
  • Each department wants to edit it’s own pages.

Yes, this is possible with PublishPress plugins and a feature called Editorial Circles.

Editorial Circles are a feature of PublishPress Permissions Pro and restrict users to editing posts that were authored by other users in the same group.

In this tutorial, we'll show you how to set up Editorial Circles so you can have 30+ groups. Each group will only able to edit to post written by group members.


Step #1. Create an Editorial Circle #

  • Start with the PublishPress Permissions Pro plugin installed on your site.
  • Go to “Permissions” in your WordPress admin menu.
  • Make sure the “Access Circles” box is checked.
  • Go to “Permissions” then “Groups” in your WordPress admin menu.
  • Edit the “Editor” group.
  • Check the box, “This group is a Editorial Circle”.
  • Click “Update Group”.

Next, you can choose to create an Editorial Circle only for some post types:

Once you've completed this set up, all the users in the Editor role will only be able to edit posts that were authored by other members of the same role.

If an Editor goes to the main “Posts” screen in the WordPress admin area, most posts will probably be hidden from view.

At this point, I recommend testing the Editorial Circle. Either log in to your site as an Editor, or install the User Switching plugin. Go to the “Posts” screen and check that everything is working as intended.


Step #2. Create More Circles Based on the Editor Role #

Now we're going to copy the Editor role to make 30+ new roles: one for every department.

  • Install the PublishPress Capabilities plugin.
  • Go to “Capabilities” in your WordPress admin menu.
  • Using the dropdown in the top-left corner, choose Editor.
  • Click Load.
  • Go to the “Copy Editor Role” box.
  • Enter the name of a department. For example, enter “History Department” or “Business Department”.
  • Click “Create”.
  • Repeat for other departments.
  • Go to “Permissions” then “Groups” in your WordPress admin menu.
  • Edit each new group and turn these new roles into Editorial Circles.