What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To let an author revise their own post after it is published, the role must have the edit_published_posts capability. WordPress’s default Author role already includes it, so an unmodified Author can edit and save changes to their own published posts. You do not need to grant edit_others_posts; that capability is for changing posts owned by other users.

Which WordPress permission controls published-post editing?

WordPress assigns capabilities to roles. For the standard Posts post type, edit_published_posts controls whether a user can edit their own posts after publication. The official Roles and Capabilities documentation lists this capability for Authors and states that removing it prevents them from editing their published posts.

The publishing permission is separate. publish_posts controls whether the user can publish. An Author normally has both capabilities, which means they can revise and publish their own posts.

Allow authors to revise their own live posts

  1. Go to Users in the WordPress dashboard and confirm the user has the Author role, or a custom role intended for authoring.
  2. Check the role’s capabilities with your role-management tool or the code that defines the role. It must include edit_published_posts.
  3. Have the author open Posts → All Posts, select one of their published posts, and choose Edit.
  4. After changing the content, select Update. The revision is applied to the live post according to the site’s normal publishing permissions.

WordPress core does not provide a general capability checklist on the standard user-edit screen. If a site uses a role/capability editor, make the change there and verify the resulting capability. On a code-managed site, capabilities can be changed with the role API:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
$role = get_role( 'author' );
if ( $role ) {
    $role->add_cap( 'edit_published_posts' );
}

Run role changes in a controlled deployment, not casually in production. Back up the site and test with a non-administrator account before changing a shared role.

Block direct editing of published posts

If authors should be able to work on drafts but not alter live content, remove edit_published_posts from the relevant role or create a narrower custom role. Removing it from the built-in Author role affects every user assigned to that role:

$role = get_role( 'author' );
if ( $role ) {
    $role->remove_cap( 'edit_published_posts' );
}

Use a custom role when only some authors need the restriction. The capability should be removed from the role that actually governs those users, and the change should be documented so a later role reset does not silently restore access.

Direct updates versus submit-for-review

Decide whether authors should change a live post immediately or send proposed work to an editor. These are different permission designs:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Goal Capabilities and behavior Who publishes
Author revises their own published post edit_published_posts; keep publish_posts if the author may make the update live The author can publish their own posts when publish_posts is present
Author submits work for editorial approval Allow editing, but withhold publish_posts An editor or another role with publishing capability
Author edits another user’s post Requires the relevant edit_others_posts capability Depends on that role’s publishing capability

WordPress’s Post Status documentation describes the review gate: a user who can edit posts but lacks publish_posts sees Submit for Review instead of Publish when creating a post. That core behavior does not by itself promise a separate staged copy for every edit to an already-live post. Post type settings and workflow extensions can change how updates are handled, so test the exact workflow your site uses.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Use revisions to inspect or undo an author’s change

WordPress stores a record of each saved draft or published update. In the editor, open the post or page settings and choose Revisions when the control is available. Compare versions, select the desired earlier state, and use the restore action to return that content.

The current Revisions documentation identifies the redesigned revisions screen as available since WordPress 7.0. WordPress 6.9 and earlier use the classic revisions screen, so the controls may look different.

Limit how many revisions are stored

If storage is a concern, WordPress supports the WP_POST_REVISIONS setting in wp-config.php:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • true or -1: store every revision.
  • false or 0: disable regular revisions, while retaining an autosave per post.
  • A positive integer: retain that many revisions, plus one autosave per user.

Back up the site before editing wp-config.php, and test the resulting revision and restore behavior on a staging site.

When the setting appears not to work

The user can edit drafts but not a published post

Inspect the role for edit_published_posts. A custom role may include edit_posts but intentionally omit the published-post capability. Also check whether a security or workflow plugin is filtering permissions.

The author sees another user’s posts

That is a separate permission issue. Do not add edit_others_posts merely to enable revisions of the author’s own posts; it expands access to colleagues’ content.

The content is a custom post type

Custom post types can use their own capability mapping. Check how the type was registered and whether it maps editing to primitive capabilities or to a custom capability set. The WordPress Developer reference for get_post_type_capabilities() explains the mapping. Verify the post type’s actual capabilities rather than assuming the standard Posts defaults.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Revision controls are missing

The editor’s settings depend on permissions and post configuration. Review the Page/Post Settings sidebar documentation, confirm revisions are enabled, and check whether the user can edit that post type.

A safe policy for editorial teams

  • Use edit_published_posts for authors who may directly maintain their own live posts.
  • Remove that capability or use a custom role when live changes require approval.
  • Withhold publish_posts when authors should submit work to an editor rather than publish it.
  • Grant edit_others_posts only when cross-author editing is an explicit requirement.
  • Confirm the capability mapping for every custom post type and workflow plugin.
  • Keep revisions available so an editor can compare and restore earlier content.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.