/ / Створіть нові гачки в Drupal 7 - drupal-7, drupal-hooks

Створіть нові гачки в Друпалі 7 - друпал-7, джупал-гачки

Я не дивлюсь, як це зробити реалізувати існуючий гачок, а скоріше для створення нового тип гака. Скажімо, гачок hook_node_load() існує. Я хочу створити щось подібне hook_node_preload(), що запускається перед завантаженням вузла.

Я "шукав і, здається, не можу дізнатися, куди в коді Друпалу стріляють гачки. Я припускаю, що це щось на кшталт module_invoke_all() чи щось подібне? Але я не впевнений, куди це закликано.

Відповіді:

2 для відповіді № 1

Друпальські гачки стріляють всюди, протягом усього процесу Друпалу. Немає одного місця, яке викликає всі гачки.

Нижче наведено список деяких функцій з ядра Drupal, які створюють гачки:

http://api.drupal.org/api/drupal/includes%21module.inc/function/calls/module_invoke_all/7

У випадку hook_node_load(), він викликається з файла entit.inc, розташованого за адресою включає / сутність.inc, у рядку 334.

foreach (module_implements($this->entityInfo["load hook"]) as $module) {
call_user_func_array($module . "_" . $this->entityInfo["load hook"], $args);
}