名前とメールフィールドを持つウェブフォームがあります。フォームが送信されると、名前と電子メールはデータベースに保存され、PDFファイルがダウンロードされます。drupal7のWebフォーム送信機能を無効にする方法は?
私の質問は、後でその余分な機能を追加できるように、Webフォームの送信機能をオーバーライドする方法ですか?
名前とメールフィールドを持つウェブフォームがあります。フォームが送信されると、名前と電子メールはデータベースに保存され、PDFファイルがダウンロードされます。drupal7のWebフォーム送信機能を無効にする方法は?
私の質問は、後でその余分な機能を追加できるように、Webフォームの送信機能をオーバーライドする方法ですか?
hook_form_alter()の実装でカスタムモジュールを作成する必要があります。
function [YOUR_MODULE]_form_alter(&$form, &$form_state, $form_id)
{
if($form_id == "YOUR_FORM_ID")
{
// target the submit button and add a new submission callback routine to the form
$form['#submit'][] = 'YOUR_SUBMISSION_CALLBACK_FUNCTION';
}
}
上記のコードは、フォームのデフォルトのコールバック関数後に新しいコールバック関数YOUR_SUBMISSION_CALLBACK_FUNCTION
を実行します。
、新しいコールバック関数が前にフォームのデフォルトのコールバック関数を呼び出し作る代わりに、上記与え、次のコードを使用する:
array_unshift($form['#submit'], 'YOUR_SUBMISSION_CALLBACK_FUNCTION');
フォームのデフォルトのコールバック機能を解除し、あなたを使用するように強制するには機能ONLYホープこのヘルプ
$form['#submit'] = array('YOUR_SUBMISSION_CALLBACK_FUNCTION');
以下のコードを使用します。
hook_form_alter()とサブミットハンドラを見てください。ここの例は:http://drupal.stackexchange.com/questions/18641/how-do-i-alter-the-form-submission-handler –