我正在使用模块。 我有一个节点ID。该节点id是一个页面,它上面有两个或更多的视图块。视图的结果是带有文件附件的节点列表。
我需要将所有文件附加到此特定页面上视图输出的节点上。
我在一个模块文件中工作,我可以提供这些视图所在的类型页面的nid。
我找不到多少帮助,所以我决定问一下最好的方法。
我是Drupal的新手,所以我将非常感谢如何解决这个问题。
答案 0 :(得分:0)
如果我正确理解您的问题,您需要打印带有参数集的视图。 抓取视图的机器名称和显示ID(在Drupal 6 Views 2中,将鼠标指针悬停在显示列表(Block,Page等)上,在URL中,您将看到类似“block_4”或“page_1”的内容。显示ID。在D7 Views 3中,您可以在右侧窗格中设置的高级字段中设置显示ID。
如果View的计算机名称为“my_view”且显示ID为“block_1”, 您可以使用以下代码在node.tpl.php或任何地方打印视图。
<?php
print views_embed_view('my_view', 'block_1', array(arg(1)));
?>
arg(1)
包含节点ID。如果您将代码放在node.tpl.php
或其变体中,则arg(1)始终是节点ID。如果转到page.tpl.php
,请确保arg(1)
至少为数字。
在视图中,您必须添加一个参数(上下文过滤器,在D7中),以使View正确获取参数。您还可以设置上下文过滤器以自动从URL获取参数。