Drupal的webform模块没有使用webform.api.php


Drupal's webform module isn't using the webform.api.php

我正在使用Drupal 7的Webform模块,我正在尝试修改webform.api中的hook_webform_submission_presave.php但似乎该模块没有使用此文件,因为我进行了修改但没有更改任何内容。

我必须在任何地方对Drupal说使用这个文件吗?或者我必须做什么?

首先,我希望你知道你不应该直接更改模块文件,而是将钩子函数添加到你的模块中,并在函数名称的开头用你的模块机器名称更改那个"钩子"。

其次,你必须清除所有的缓存,这样Drupal才会重新扫描你的模块,找出有新的钩子功能并开始使用它。

因此,您必须先创建自己的模块:

https://www.drupal.org/developing/modules/7

不要害怕 - 它只是一个文件夹,其中包含描述您的模块和模块文件的信息文件(在最小情况下)。

然后,如果你的模块被称为"anna",你应该在模块文件中创建一个函数并命名它:

anna_webform_submissions_presave()

并清除缓存 - 之后 Drupal 应该开始调用你的钩子函数。

模块

不使用其.api.php文件。这些文件用于文档目的。这是记录钩子定义的标准方法。