I let anonymous users publish content on my site, but the content must be reviewed before to be published. The following is my ways to do that:

  • Using CCK, I created a content type and unchecked the publish option.
  • I gave the permission to create/edit/delete the content type to anonymous users.

This allows anonymous users to publish the content, but when they save the node they get an "Access denied" error.

What's the difference between what I do and using Workflow module? Is there a way to redirect the page, and make the anonymous users see the node they created?

  • 1
    You really shouldn't give anonymous users the permission to delete or edit the content type. The danger here is that any anonymous user will be able to edit or delete any content of this type, not just their own content of that type.
    – jhedstrom
    Commented Mar 31, 2011 at 4:00
  • unless enjoylife has specifically set "delete own ...", "edit own ..." on the permissions page.
    – keva
    Commented Apr 1, 2011 at 21:04

4 Answers 4


As the node is not published, when anonymous users create a node, they cannot see it. That is the reason they get the "Access denied" page.

You can redirect anonymous users to another page, and I would suggest to install, and use Rules, which allows (among other things) to redirect users when some conditions are met. The module can be useful to accomplish many other tasks, and avoids you to write custom modules.

  • could i use the form['redirect'] in the hook_form_alter()
    – enjoylife
    Commented Mar 31, 2011 at 4:04
  • You can write a custom module that adds a submission handler to the content edit form, and that alter the content of $form_state['redirect'] from the submission handler. I would rather suggest to do that, instead of altering the content of $form['#redirect'].
    – apaderno
    Commented Mar 31, 2011 at 4:09

There is also the view unpublished module which will allow anon users to view the unpublished node they just completed.


For example, in your site navigation, in place of node/add/page, instead link to node/add/page?destination=node/123 (where node/123 is a page is where you'd like to send users after adding new content).

  • i don't know how and where to do this? i only made the anonymous user add content have a redirect
    – enjoylife
    Commented Mar 31, 2011 at 3:27
  • how are the anonymous users adding content? They need a link to do so. That is the link Matt V. is referring to.
    – keva
    Commented Apr 1, 2011 at 21:03

You may also be interested in the Anonynous Publishing module.

Disclosure: I am the maintainer.

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.