如何在保存节点(书籍或页面)之前更新它,而不触碰Drupal中的模块代码?

如何在保存节点(书籍或页面)之前更新它,而不触碰Drupal中的模块代码?,drupal,module,save,drupal-alter,nodeapi,Drupal,Module,Save,Drupal Alter,Nodeapi,在将数据写入数据库之前,我想在节点中设置一些值。我已经通过修改book_nodeapi使它工作了,但是我想从代码之外进行,一些允许我保持模块代码不变的修改选项将非常好 谢谢您可以制作一个自定义模块并在其中实现(mymodule\u nodeapi),就像图书模块一样。每个活动模块都有机会为所有节点连接到nodeapi。如果我了解您需要什么,模块在此类任务中可能非常有用。 您需要做的只是根据所需的内容类型创建一个条件,并执行一个设置值的操作。 可以使用静态值、值甚至PHP代码来设置值 是一个包含规

在将数据写入数据库之前,我想在节点中设置一些值。我已经通过修改book_nodeapi使它工作了,但是我想从代码之外进行,一些允许我保持模块代码不变的修改选项将非常好


谢谢

您可以制作一个自定义模块并在其中实现(
mymodule\u nodeapi
),就像图书模块一样。每个活动模块都有机会为所有节点连接到nodeapi。

如果我了解您需要什么,模块在此类任务中可能非常有用。 您需要做的只是根据所需的内容类型创建一个条件,并执行一个设置值的操作。 可以使用静态值、值甚至PHP代码来设置值


是一个包含规则基础的屏幕广播。

+1-这是最灵活的方法-您需要在
预保存
操作上进行更改(只有在节点保存到数据库后才会触发插入/更新操作)+1-与ceejayoz建议使用
hook_nodeapi
相比,这是一种不太灵活的方法,但可能足以满足您的需要,并且不需要在自定义模块中使用自定义代码。嗯,的确如此。我读到“我想从代码之外做这件事”,以为你真的不想编写代码。。。