Drupal 6 Drupal 6节点视图为空

Drupal 6 Drupal 6节点视图为空,drupal-6,drupal-modules,Drupal 6,Drupal Modules,我试图生成一个包含特定节点列表的页面,但node_视图返回一个空字符串 这是我的疑问: function events_upcoming() { $output = ''; $has_events = false; $res = pager_query(db_rewrite_sql("SELECT n.nid, n.created FROM {node} n WHERE n.type = 'events' AND n.status = 1 ORDER BY n.sticky DES

我试图生成一个包含特定节点列表的页面,但node_视图返回一个空字符串

这是我的疑问:

function events_upcoming() {
  $output = '';
  $has_events = false;

  $res = pager_query(db_rewrite_sql("SELECT n.nid, n.created FROM {node} n WHERE n.type = 'events' AND n.status = 1 ORDER BY n.sticky DESC, n.created DESC"), variable_get('default_nodes_main', 10));

  while ($n = db_fetch_object($res)) {
    $output .= node_view(node_load($n->nid), 1);

    $has_events = true;
  }

  if ($has_events) {  
    $output .= theme('pager', NULL, variable_get('default_nodes_main', 10));
  }

  return $output;
}
钩形菜单(部分):

hook_视图的实现:

function events_view($node, $teaser = false, $page = false) {
  $node = node_prepare($node, $teaser);

  if ($page) {
    // TODO: Handle breadcrump
  }

  return $node;
}
现在,如果我在events_view中添加一个var_dump($node),那么这个节点就存在了,我可以看到我想要的值,如果我在while loop in events_中添加一个var_dump,我还可以从查询中获得一个节点id

奇怪的是,当我加载localhost/events/approxing时,我看到的是寻呼机而不是其他东西


我已经使用blog.module作为参考,但是我在这里缺少什么呢?

这里是线程,其中有一个补丁,还有我的另一个答案

您可以在每个要执行node_视图的位置使用node_load,但这似乎浪费了处理器

签出补丁,尽管它位于核心节点模块上

function events_view($node, $teaser = false, $page = false) {
  $node = node_prepare($node, $teaser);

  if ($page) {
    // TODO: Handle breadcrump
  }

  return $node;
}