Я пытаюсь подключиться к событию hook_views_post_execute
в Drupal 7, мой модуль под названием foo
находится в sites/default/modules/features/foo
.
Мой файл foo.module
содержит определение функции hook_views_api
, определенное следующим образом:
function foo_views_api() { return array("version" => 3.0); }
Эта функция hook_views_post_execute
, но моя реализация hook_views_post_execute
не определена, она определена (в том же файле foo.module
) следующим образом:
function foo_views_post_execute(&$view) { $seen_rows = array(); $newResults = array(); for($i = 0; $i < count($view->result); ++$i) { if (!in_array($view->result[$i]->nid, $seen_rows)) { $newResults[] = $view->results[$i]; } $seen_rows[] = $view->result[$i]->nid; } $view->result = $newResults; }
Я был над документацией API / крючков drupal, googled и прочитал каждое сообщение в блоге, которое я смог найти. Я просто не могу заставить его работать. Крюк не вызывается. Я предполагаю, что я сделал что-то простое, потому что я не разработчик drupal или PHP-разработчик.
Представление, вероятно, было кэшировано, поэтому оно не проходит через эту функцию.
Перейдите в верхний левый и очистите кеш, и вы увидите результат.