Для разработки своего проекта, мне понадобилась система модерации. В drupal уже ест готовые модуля для этого, но я решил использовать более абстрактный модуль workflow.
Для начала, установите в вашу систему сам модуль workflow.
Затем, Управление → Конструкция сайта → Workflow. Добавляете процесс "Add workflow", указываете его имя (например "Процесс утверждения") Затем указываете имя состояния, в которое перейдет материал, после его создания, например - "не утверждено". Затем, добавляете еще одно состояние - "Add state" (например "Утверждено")
После этого, настраиваете ваш workflow, жмите "Изменить". Здесь, вы можете указать какие роли могут переместить ваш материал из одного состояния в другое. Например указать, что роль "автор" может перемещать свой материал из состояния (создано) в состояние "Не утверждено", т.е. в (creation) → "Не утверждено" ставите галочку напротив "author". А роль "модератор" может переместить материал в состояние "утверждено". Изменить состояние материала можно на странице "Workflow" вашего материала.
Теперь, давайте настроим действия (триггеры) для вашего workflow. Во первых, в настройках типа вашего материала желательно убрать галочку с "Опубликовать " в настройках "Процесса" по умолчанию. Таким образом, ваш материал не будет сразу опубликован, после добавления.
После этого, вам необходимо зайти в раздел "Действия" вашего workflow. Здесь вы можете указать действия для состояний вашего workflow. Я указал, что для переходов (created) → "Не утверждено" и "Утверждено" → "Не утверждено" материал снимается с публикации и сохраняется, а для перехода "Не утверждено" → "Утверждено" материал публикуется и сохраняется.
Теперь, при создании, материал сохраняется и опубликовать может его только модератор, после утверждения.