Drupal 使用令牌将url中的id从节点传递到视图(使用viewfield)
我有一个使用view制作的页面,该页面从url获取termId,并显示附加到此termId的用户(例如):www.example.com/my-view/122显示包含termId 122的所有用户 默认情况下,如果我没有指定任何术语,此页面将显示所有用户。(www.example.com/my view) 现在,由于viewfield模块,我将此页面(我的视图)放在一个节点中,并且我希望将参数传递给节点中包含的视图(术语122),因此我希望我必须按照指定使用标记,但我无法正确使用它们Drupal 使用令牌将url中的id从节点传递到视图(使用viewfield),drupal,drupal-7,drupal-modules,drupal-views,Drupal,Drupal 7,Drupal Modules,Drupal Views,我有一个使用view制作的页面,该页面从url获取termId,并显示附加到此termId的用户(例如):www.example.com/my-view/122显示包含termId 122的所有用户 默认情况下,如果我没有指定任何术语,此页面将显示所有用户。(www.example.com/my view) 现在,由于viewfield模块,我将此页面(我的视图)放在一个节点中,并且我希望将参数传递给节点中包含的视图(术语122),因此我希望我必须按照指定使用标记,但我无法正确使用它们 事实上,
事实上,当我在节点中包含页面(我的视图)时,我看到的是默认视图,而我没有提供任何术语。一旦我尝试使用标记,就不会显示任何内容。我不知道如何将标记值作为viewfields的参数传递,但您当然可以使用上下文过滤器: 添加内容:在视图中具有分类术语ID上下文筛选器(在“高级”下),当筛选器值不可用时,选择“提供默认值”,并从URL中选择分类术语ID。这应该在可用时添加术语ID作为参数 或 在node.tpl.php模板中使用以下命令执行此操作:
<?php print views_embed_view('view_name', 'default', $arg); ?>
只需获取术语id并将其作为参数传递。我认为您不必使用标记:当您使用上下文过滤器时,您可以提供一个默认值(在您的示例中,来自URL的值) 然后,您可以通过他的ID访问容器节点,并将therm ID作为后缀,以避免404错误
正常情况下,它应该工作 好的,谢谢。我已经设置了上下文过滤器,它可以工作。。。但是,当我在内容类型tnat中添加一个具有viewfields的标记时,它破坏了systemPERFECT!你救了我的命!