Drupal 8:当用户点击删除按钮时,如何取消发布节点



在我的网站上,用户可以添加内容并编辑内容。在编辑页面上,有一个删除按钮可以删除内容,但我想使用该按钮向用户和公众隐藏/取消发布内容。

I have tried the below code but it is deleting the content.  
function test_entity_predelete(DrupalCoreEntityEntityInterface $entity) {
$nid = $entity->id();
$node  =Node::load($nid);
$node->setPublished(FALSE);
$node->save();
}
  1. 首先,不允许用户删除节点权限设置
  2. 其次添加"发布/取消发布"按钮或仅添加在编辑表单上向用户显示"发布"复选框,并指示他们如何使用它以及它的工作方式

也许模块组合会有所帮助:

  1. https://www.drupal.org/project/publishcontent
  2. https://www.drupal.org/project/view_unpublished
  3. https://www.drupal.org/project/override_node_options

您可以尝试使用hook_form_alter((覆盖操作按钮。

$form[actions']['delete']

相反,标准动作使用自己的动作。

最新更新