3

Drupal を外部 Web サービスに接続するモジュールに取り組んでいます。ユーザーが登録するときは、Drupal ではなく Web サービスに登録してもらいたいです。user_register フォームが送信されたときに呼び出される送信関数をオーバーライドしたいと考えています。

既に $form['#submit'] を使用していますが、機能していません。

他の解決策はありますか?私はdrupal7を使用しています。

そのように使用しました

function mymodule_form_user_register_form_alter(&$form, &$form_state, $form_id) { 
$form['account']['name']['#title'] = t('Full name'); // perform other changes here 
$form['#submit'][] = 'mymodule_user_register_form_submit' 
} 
4

1 に答える 1

3

使用するとき

$form['#submit'][] = 'mymodule_user_register_form_submit' 

実際には送信モジュールをオーバーライドしていません。あなたは、他のすべてのモジュール(私の前に実行された)によって作成された送信関数を実行した後、私の関数も実行すると言っていますmymodule_user_register_form_submit

送信関数をオーバーライドしたい場合$form['#submit'] = 'mymodule_user_register_form_submit'は、関数が実行される唯一の関数であることを確認するようなものを使用します。

于 2012-11-23T20:08:48.243 に答える