Как вызвать функцию при просмотре узла?


8

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

Я думал, что должен использовать hook_menu()и объявить путь как узел /%, и прикрепить функцию обратного вызова к этому пути. Это правильный путь, или есть правильный / лучший способ?


это очень просто ответить?
суровый

1
Да, ответ очень прост, но я не уверен, почему это делает этот вопрос плохим. Понижение голосов кажется ненужным ИМО. Я отредактировал, чтобы прояснить и сделать очевидным, что вы сами об этом думаете, но надеюсь, этого будет достаточно, чтобы успокоить недоброжелателей :)
Клайв

Я должен признать, что редактирование Клайва значительно улучшило читаемость этого вопроса :) +1 от меня. Вопросы, на которые легко ответить, когда вы знаете, что ответ не всегда плохой, иногда их трудно найти в сети или в документации на drupal.og.
Молот

Ответы:


6

Вы можете реализовать hook_node_view()

Действуйте на узле, который собирается перед рендерингом.

например

function MYMODULE_node_view($node, $view_mode, $langcode) {
  if ($node->type == 'the_type' && $view_mode == 'full') {
    // Call your function here.
    my_function($node);
  }
}

2

Модуль правил также может реагировать на доступ к URL. Вы можете указать действие, которое должно произойти с событием, если условие истинно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.