【问题标题】:Drupal hook_views_post_execute not getting calledDrupal hook_views_post_execute 没有被调用
【发布时间】:2011-08-16 04:39:23
【问题描述】:

我正在尝试挂钩 Drupal 7 中的hook_views_post_execute 事件,我的模块foo 位于sites/default/modules/features/foo

我的foo.module 文件包含hook_views_api 函数的定义,定义如下:

function foo_views_api() {
    return array("version" => 3.0);
}

这个函数被调用,但我的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;

}

我浏览过 drupal API/hooks 文档,搜索并阅读了我能找到的每一篇博文。我只是无法让它工作。钩子不会被调用。我假设我做错了一些简单的事情,因为我通常不是 drupal 开发人员或 PHP 开发人员。

【问题讨论】:

    标签: php drupal drupal-views drupal-modules drupal-7


    【解决方案1】:

    视图可能已被缓存,因此它不会通过该函数。

    转到左上角并清除缓存,您应该会看到结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多