Tracking down a mostly working solution for this problem took most of my day today. On the LIS website, I want certain groups/people to be able to edit their own pages of the website but not be able to edit anything else. This solution takes a couple steps.
- First, designate a user (or users) to the role of Editor via Users > Users. Check the box next to the user and then select “Editor” from the drop down menu.
- Add the code from this link to your functions.php page. Include the second bit of code in order to have all your bases covered.
- Download the Members plugin and install it.
- Go to Settings > Members Components.
- Check “Edit Roles” then go to to Users > Roles.
- Hover over Editor until “Edit” appears. Click on “Edit.”
- Make sure only these boxes are checked: edit pages, publish_pages, edit_published_pages, read, and upload_files
- Download the WP Hide Dashboard plugin.
- Unzip WP Hide Dashboard in your favorite text editor (I’m using Dreamweaver presently) and open the wp-hide-dashboard.php file.
- Follow the directions on this page to hide the “Dashboard link, Tools menu, Personal Options, and Help options from other roles besides Subscriber.” Basically, you’re changing edit_posts to manage_options. Hit save.
- If you can, rezip the file and then upload it via WordPress’ dashboard, otherwise you’ll have to upload the unzipped file via FTP to wp-contents/plugins.
- Activate as per normal.
If you can, log into the account of an editor and make sure that they can only edit the page that they’ve created. When you’re on the main page of your website logged in as an editor, the “Edit this entry” text will only appear on pages that they’ve created. Some boxes are still appearing such as “Links, Pages, and Profile” but I don’t know how to disable them yet.