I have a client that wants to manage the editing process on a CPT called Floor Plan. They want to be able to preview and approve/deny all edits to a Floor Plan. I thought I had a solution by having an Admin account create a Floor Plan and have a Contributor enter the necessary content, finally being approved and published by the Admin.

The problem comes when the Floor Plan needs to be updated. Once published, a Contributor can no longer edit a post. If we switch the user to Author, then they can edit the post, but the only option then is to Update. Which updates the content on the published page, and the client still wants to be able to approve/deny edits.

I know an Author could send a preview link to the Admin that they could view while logged in and approve or deny, but the Author still has the ability to hit Update and update the published post with unapproved content.

I have been toying with Edit Flow but it doesn't seem to address this particular problem. Unless I'm just not setting it up properly.

Is there even a way to do this? All my searching has found nothing.

  • We had this same concern for our content editors and getting thenecessary approvals. Look at Jorbin's Post Forking github.com/post-forking/post-forking
    – jdm2112
    Commented Jan 26, 2018 at 16:43
  • @jdm2112 does it work with 4.9.x? I'm assuming it could break in 5.x Shame it's out of development for 4+ years :( I'll give it a shot, thanks
    – zfors
    Commented Jan 26, 2018 at 16:57
  • Agreed. We ended up forking the forking plugin and creating our own solution. But it took a lot of forking around... Definitely test it locally or in dev and check logs for warnings, deprecation, etc.
    – jdm2112
    Commented Jan 26, 2018 at 17:16
  • Hi. Did you managed to resolve the problem, because I have the same issue and can't figure it out. Commented Mar 6, 2018 at 10:10
  • @KedvesHunor unfortunately no. Because of time and budget constraints we just tweaked the client's edit process to accommodate for WordPress' functionality.
    – zfors
    Commented Mar 7, 2018 at 16:46

2 Answers 2


There are some workflow plugins available - one being https://wordpress.org/plugins/oasis-workflow/ - but many provide a lot of overhead without quite exactly what you're looking for. For example, some only work with native Posts and Pages and not CPTs.

If none of the workflow plugins works out, you can look into creating custom statuses and developing your own plugin. Basically, you hook into post status changes, and if the status is publish, you can use jquery to replace the publish changes button with a "submit for review" button. Then you need custom PHP that saves this as a custom status and emails the Approver/Publisher role that changes have been submitted for review. You can send the Approver/Publisher a link to the Compare Revisions screen so they see the old vs. the new side by side and can then make additional changes or publish as-is.

To be quite honest, workflow is the main feature I see lacking in WordPress compared to many other CMSs.

  • "To be quite honest, workflow is the main feature I see lacking in WordPress compared to many other CMSs." Yeah, that's a bit frustrating. I may have to give this a go, thanks for outlining the idea!
    – zfors
    Commented Jan 26, 2018 at 17:15

The Plugin https://wordpress.org/plugins/user-role-editor/ has worked the best for me. you can create a custom role and give it what permissions you want.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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