как вывод крючков друпал - PullRequest
0 голосов
/ 21 февраля 2011

drupal равен 6. 1, в drupal.everything выводится функцией темы или файлом шаблона. Это право.если правильно, то вопрос 2.

2, в модуле есть hook_link и hook_menu, как они выводят?я не могу найти функцию темы или файл шаблона.спасибо.

Например: в модуле книги определена book_link ().но я не могу найти, что есть heme_book_link () , и в hook_theme нет возврата book_link.

Ответы [ 2 ]

1 голос
/ 21 февраля 2011

3 вещи, которые делают понимание крюков Drupal:

  1. Это просто обычные функции php.
  2. Много раз они ничего не возвращают.
  3. Они "вызываются" module_invoke_all () или module_invoke ()

Например: если модуль foo имеет hook_dosomething () , в foo.module есть функция, которая реализует module_invoke_all ('foo', 'dosomething')

Другой способ думать о том, что ловушка "расширяет" функцию где-то еще, и все, что происходит в ловушке, происходит в функции, которая вызывает в ней module_invoke_all ().

1 голос
/ 21 февраля 2011

Не все хуки генерируют вывод. Например, hook_menu () и hook_link () просто возвращают массивы с данными, которые каким-то образом будут использоваться Drupal (например, для регистрации новых путей в системе).

...