Разрешить пользователям создавать, но не публиковать материал

Главные вкладки

Аватар пользователя RomanovVlad RomanovVlad 18 мая 2016 в 19:09

Здравствуйте, можно ли на drupal 8 реализовать возможность разрешить пользователям создавать материал, но при этом, чтобы они не могли его публиковать, а только администратор после проверки. Есть ли какий-то модули, на drupal 7 через rules делалось, но на drupal 8 не работает данный модуль полноценно.

Комментарии

Аватар пользователя g78knl6cvxf0 g78knl6cvxf0 22 мая 2016 в 2:44

вроде так:

<?php
/**
 * Implements hook_ENTITY_TYPE_presave().
 */
function HOOK_node_presave(\Drupal\Core\Entity\Entity_Interface $node) { # в Entity_Interface без _, ибо "y I n" - мат 
  
if(in_array('ROLE', \Drupal::currentUser()->getRoles())) {
    
$node->setPublished(FALSE);
  }
}
?>

Еще можно здесь глянуть.

Аватар пользователя Lotar Lotar 22 мая 2016 в 4:35

Можно не выдумывать велосипед, а просто поставить у типа материала по умолчанию статус не опубликован. А в разрешении ролей соответственно дать разрешение на создание материала данного типа.