I want to allow users to submit the content to my site, but the content must be first approved, and then it can be published.

Is there a module that do this? Which code should I write for such module, if one doesn't exist?

3 Answers 3


You might want to try: http://drupal.org/project/workflow & http://drupal.org/project/formfilter

If you create a workflow you can set it to only allow users to create content in the 1st state, something like "needs review". Then, an admin can come in and progress to the 2nd sate, say to "published".

I used an action and trigger to automatically publish any content placed into the 2nd state.

You can use the form filter to disable the ability to set the content straight as published in the normal node edit form.

Ideally you will want some type of approval queue too, you can use the default Workflow summary but I think this requires views.

  • 3
    drupal.org/project/override_node_options may be helpful as well.
    – antgiant
    Mar 30, 2011 at 15:04
  • Ooo, looks good a lot less complicated than form filter. thanks
    – WestieUK
    Mar 30, 2011 at 15:07
  • i used the drupal's default function, enabling the permission to the anonymous user to creat story. and then unchecked the publish option in story content type. then the anonymous user can publish articles and the articles will be reviewed can publish. what's the difference with the workflow module?
    – enjoylife
    Mar 31, 2011 at 2:50
  • Sometimes you might want tighter control over administer nodes, for example we have quite a strict workflow process with many roles involved, each role can only change to and from certain states. Content is created by agents and put into draft / awaiting media. If it is in awaiting media an email is sent to the Media Developers linking to the workflow - here comments describe the requirement. Then the devs can change the state to review. This is then reviewed by stakeholders who also add comments in the workflow before an editor (who is the only role who can publish) signs it off.
    – WestieUK
    Mar 31, 2011 at 7:08

Another way to do this is the Revisioning module. If you set the content type to not be published by default, you can use this module to control publication as well as any revisions. It provides a view for administrators showing all revisions that are awaiting publication.

  • How does this compare to @WestieUK's answer? Dec 4, 2014 at 10:38

"Workflow" or "Revisioning", depends up on your requirements.

Workflow module provides state based content control, i.e., you can make your content flow across various states (Draft, Pending, Review etc.,) and various users, before you publish it.

Revisioning module creates a new revision for every edit made on a node, and finally you can publish it.

I suggest you to use the combination of both these modules, for a cleaner impact. This slideshare presentation would be helpful for you, read this before you proceed http://www.slideshare.net/mewren/workflow-revisioning-and-rules-in-drupal

But remember, this is a back and forth task. Choose carefully between workflow_node and workflow_field. Also, you may need to work around this issue http://www.ionsden.com/article/problems-workflow-and-revisioning-drupal

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.