挂钩Drupal Webform提交

时间:2014-12-16 15:49:34

标签: php forms drupal drupal-7 drupal-webform

我正在开发一个Drupal 7网站。该网站有几种形式,用于收集用户的电子邮件地址。作为流程的一部分,我需要能够通过API将邮件提交到邮件列表。

我已经编写并测试了所有调用以将新用户添加到邮件列表等等。我不太确定如何在Drupal站点上提交表单时运行此代码。

我认为会有一个钩子功能,但我很难跟踪它。我的表单是使用Webforms模块设置的。

1 个答案:

答案 0 :(得分:1)

使用hook_form_alter()挂钩您的网络表单实例&添加一个额外的提交处理程序:

/**
 * Implements hook_form_alter().
 */
function hook_form_alter(&$form, $form_state, $form_id) { 
    if ($form_id == 'webform_client_form_{some id}')
    {
        array_unshift($form['#submit'], 'custom_webform_submit');
    }
}

custom_webform_submit()中执行自定义代码:

function custom_webform_submit($form, $form_state) {
    // custom code here
}