Как добавить к обратному вызову страницы модуля Drupal - PullRequest
1 голос
/ 17 августа 2010

Скажем, у вас есть обратный вызов страницы из модуля # 1 с помощью hook_menu (). Вы хотите создать модуль № 2, который бы просто добавлял что-то внизу обратного вызова страницы модуля № 1 (подумайте о наличии заметок, которые вы хотели бы добавить внизу страницы). Как ты мог это сделать? Насколько я понимаю, вы можете использовать hook_menu_alter, чтобы полностью переопределить обратный вызов страницы, но что, если вы просто хотите добавить к нему?

Ответы [ 2 ]

3 голосов
/ 17 августа 2010

Вы не можете делать то, что просите, но в некотором смысле вы можете сделать это.

Скажите, что обратный вызов исходной страницы: foo

Вы меняете его на bar с hook_menu_alter.

Тогда вы могли бы сделать что-то вроде этого.

function bar() {
  $output = foo();
  $output .= 'extra';
  return $output;
}

Это не очень хорошее решение, но оно работает.

Альтернативными решениями было бы использование блоков и регионов, для чего оно и было предназначено. В некоторых случаях это потребует дополнительной работы, если вам понадобится доступ к контекстам и странице администрирования блока, и они станут немного беспорядочными, если вам нужно много блоков для каждой страницы.

В некоторых случаях вы можете исправить свои потребности, переопределив функции тем, шаблоны или используя обработчики препроцесса.

1 голос
/ 17 августа 2010

Может быть, рассмотреть возможность реализации блока области нижнего колонтитула с включенной по умолчанию?Или используя hook_footer () ?

...