我目前正在开发一个Drupal 7站点,我使用Page Manager的“node_view”来自定义“Article”内容类型的布局。 因此,每当查看文章时,我都希望显示一个带有“相关内容”的小方框。 我有一个分类词汇表“共享类别”,我在所有内容类型中都使用它。
例如,我还有一个“图库”内容类型,因此在使用“myTag”术语查看文章时,我想在“共享类别”词汇表中显示带有标记为“myTag”的图像的内容窗格。
我的问题是关于为内容窗格设置上下文过滤器。 “参数输入”应该是词汇还是术语? - 我已经尝试了两种方法,但无法让它发挥作用。
此外,我还有另一个问题:是否可以将内容窗格用作块,与Panel一起显示? - 我猜不是,因为Contextual过滤器值来自Page Manager。
答案 0 :(得分:0)
您不希望在面板中手动输入参数,因为每篇文章都会有所不同。 您需要使用从节点获取tid的默认参数自动设置它。
要使相关内容块基于与正在查看的节点相同的术语显示内容,您需要在视图中添加分类术语id参数。 然后,您可以尝试“设置默认参数”并使用“来自URL的分类术语”(节点选项)
如果这不起作用,您可能需要使用默认参数区域中的PHP代码从节点获取相关的tid,使用node_load或menu_get_object来加载节点。
例如
if($node = menu_get_object()){
if(isset($node->field_shared_category[$node->language][0]['tid'])){
return $node->field_shared_category[$node->language][0]['tid'];
}
}
答案 1 :(得分:0)
可以通过在块视图中使用上下文过滤器来显示相关内容。此块视图将包含与用户查看的当前内容相关联的内容。
你可以转到" Create related content block view based on terms in Drupal 7"博客文章,以获得创建此块视图的分步说明。