ここではDrupalのモジュール自身のウェイトを変更する方法を紹介します。
Drupalではモジュールはhook関数群を使用してモジュール独自の機能を追加したりするのですが、複数のモジュールが同じhook関数を使用している場合に、どのモジュールのhook関数からコールされるかはモジュールのweightによって決定されます。自分のモジュールのhook関数が他のモジュールよりも必ず先に呼ばれてほしい場合には小さな数字(もしくはマイナスの値)をウェイトに指定します。その逆に一番最後に呼ばれてほしい、というような理由がある場合にモジュールのウェイトを大きな数字(たとえば100とか1000とか)にします。
ウェイトを変更するにはモジュールのhook_install()関数内で以下のコードを記述します。
- db_query("UPDATE {system} SET weight = [ウェイト数値] WHERE name = 'モジュール名'");
Drupal Coreのhook関数はウェイト0に設定されていますので、マイナスのウェイトを指定すればCoreのhook関数より先にコールされることになります。
参照元
How to update a module's weight
http://drupal.org/node/110238
ちなみに以下のモジュールを使うとインストールされている全モジュールのウェイトを管理画面から変更することが可能です。
Utilityモジュール
http://drupal.org/project/util

