向节点添加内容/视图的最佳方法是什么?

时间:2010-08-10 15:28:00

标签: drupal drupal-6 drupal-views

我正在开发一个显示视频的模块。我创建了一个视图所谓的导航,供用户从列表中选择视频。

现在我想要将此导航添加到type ='video'的每个节点。我不知道是否应该为它创建一个模板(然后我必须将模板文件放在主题文件夹中,这不是很好)或者使用某种钩子(我还没弄清楚要使用哪一个)?

我尝试安装http://drupal.org/project/views_attach,但视图只出现在内容(标题之后),这不是我真正想要的。我希望它在标题之上。

请帮忙。我正在使用drupal 6 提前谢谢。

4 个答案:

答案 0 :(得分:0)

听起来你只是以任意多种方式创建导航块,并告诉块只在显示规则中使用php显示视频节点类型。也许menu_block模块可以帮助你。

答案 1 :(得分:0)

您可以使用views_embed_view在节点模板中随意渲染视图。

创建特定于您的视频节点类型的模板:node-video.tpl.php并将视图插入所需的位置。

答案 2 :(得分:0)

如果您不想通过模板文件执行此操作,可以使用Panels模块为每个节点类型设置不同的布局。安装后,在node_view面板下创建一个变体,并限制为“video”类型的节点选择该变体

答案 3 :(得分:0)

我终于找到了如何将视图实现为块(只需选择块作为内容视图),并使用下面的代码显示某个节点类型的块

<?php
  $match = FALSE;
  $types = array('video'=>1);

  if ((arg(0) == 'node') && is_numeric(arg(1))) {
    $node = node_load(arg(1));
    $match = isset($types[$node->type]);
  }
  return $match
}
?>