Drupal - How do I let users unpublish and publish their own content?

A UI approach which I have used on some sites is the Override Node Options module, adds permissions similar to those that my other answer provides, plus a bunch extra.


We always use the Publish Content module for that. It adds a number of fine-grained permissions and a publish/unpublish tab on nodes.

This module

  • enables granular publish and unpublish permissions:
    • global (un/publish any content)
    • per "node type" (un/publish any [nodetype] content)
    • per user (un/publish own [nodetype] content
  • adds a "Publish/Unpublish" tab to the node page for one-click un/publishing.
  • exposes publish/unpublish links to your views, making it easy to streamline workflows for reviewers, editors and publishers.
  • is lightweight and always will be.

I'd recommend using the Revisioning Module which gives you a few benefits over the above methods. One of course is that it is a fully maintained module and thus there will be a lot of eyes on the code and plenty of bug fixes. Two, you will get more features to fit this into your overall workflow.

For your use case, gives your users both the "creator" permissions and the "moderator" permissions, so they can basically moderate their own content, but as says in the module description, they are not given god-like powers such as giving 'administer nodes' would give.

Tags:

Nodes

Users