drupal はどのように独自のフックを作成しますか。同様に、自分用にカスタマイズされたフックが必要です。どうすればいいですか?
2 に答える
2
module_invoke_allを探している可能性があります
開始するのに役立ついくつかのリンク:
于 2012-05-13T08:09:09.393 に答える
0
参照によってパラメーターを渡すフックがあり、drupal_alter を使用できない場合 (たとえば、複数の引数を渡す presave フック)、module_implements を使用できます。
このようにして、モジュールはそれを modulename_presave_alter ではなく modulename_foo_presave として実装できます。ライフサイクルの複数の時点でモジュールに何かを変更させたい場合に適しています。
drupal コア チェックアウトの例については、node_validate (drupal 7) のコードを確認してください。
foreach (module_implements('node_validate') as $module) {
$function = $module . '_node_validate';
$function($node, $form, $form_state);
}
http://api.drupal.org/api/drupal/modules%21node%21node.module/function/node_validate/7から
この方法で実装できるフックを作成する場合、Drupal 6 でも同じアプローチが機能します。
于 2012-05-14T17:25:50.490 に答える