Php Drupal节点保存/编辑
我想用我的节点做这个非常特别的事情。这看起来很简单,但可能很难 有两个用户,版主和注册用户 版主和注册用户都可以编辑节点 当版主编辑节点时,将在该节点上进行更改并保存这些更改 当注册用户编辑节点时,编辑表单的加载方式与他们作为主持人的方式完全相同,但当他们保存节点时,将创建一个新节点,而旧节点保持不变Php Drupal节点保存/编辑,php,drupal,Php,Drupal,我想用我的节点做这个非常特别的事情。这看起来很简单,但可能很难 有两个用户,版主和注册用户 版主和注册用户都可以编辑节点 当版主编辑节点时,将在该节点上进行更改并保存这些更改 当注册用户编辑节点时,编辑表单的加载方式与他们作为主持人的方式完全相同,但当他们保存节点时,将创建一个新节点,而旧节点保持不变 这是Drupal核心的一种可能性。这看起来很简单,但看起来越来越像唯一的解决方案是对内核进行黑客修复,这是我被告知永远不要做的事情。不要对内核进行黑客攻击-drupal有一个很好的特性,叫做hoo
这是Drupal核心的一种可能性。这看起来很简单,但看起来越来越像唯一的解决方案是对内核进行黑客修复,这是我被告知永远不要做的事情。不要对内核进行黑客攻击-drupal有一个很好的特性,叫做hooks 首先,您必须创建模块。这不是一件很难做的事…只是谷歌而已,但基本上: 然后,在模块文件中添加钩子函数。即 当您将函数注册为hook\u node\u presave(通过给出确切的名称)时,您的函数将在保存任何类型的节点之前被调用。因此,在该函数中,您可以检查用户是谁、他扮演什么角色、当前保存的内容类型以及下一步应该做什么 如果是版主-什么都不要做 但如果是注册用户,请使用$node变量中提供的数据在此处创建新节点。然后取消当前节点保存: