Drupal 7 “查看内容窗格”;相关内容“;按分类法

Drupal 7 “查看内容窗格”;相关内容“;按分类法,drupal-7,taxonomy,Drupal 7,Taxonomy,我目前正在开发一个Drupal7站点,在这里我使用页面管理器的“节点视图”来定制我的“文章”内容类型的布局。 所以,每当我看一篇文章时,我都想展示一个带有“相关内容”的小方框。 我在所有内容类型中都使用了一个分类词汇“共享类别” 例如,我还有一个“Gallery”内容类型,因此当在中查看带有“myTag”术语的文章时,我希望显示一个内容窗格,其中包含“Shared category”词汇表中带有“myTag”标记的图像 我的问题是关于设置内容窗格的上下文过滤器。 “参数输入”应该是词汇还是术语我

我目前正在开发一个Drupal7站点,在这里我使用页面管理器的“节点视图”来定制我的“文章”内容类型的布局。 所以,每当我看一篇文章时,我都想展示一个带有“相关内容”的小方框。 我在所有内容类型中都使用了一个分类词汇“共享类别”

例如,我还有一个“Gallery”内容类型,因此当在中查看带有“myTag”术语的文章时,我希望显示一个内容窗格,其中包含“Shared category”词汇表中带有“myTag”标记的图像

我的问题是关于设置内容窗格的上下文过滤器。 “参数输入”应该是词汇还是术语我两个都试过了,但都没用


另外,我还有另一个问题:是否可以将内容窗格作为块使用(与面板一起显示)我想不会,因为上下文筛选值来自页面管理器。

您不想在面板中手动输入参数,因为每篇文章的参数都会有所不同。 您需要使用从节点获取tid的默认参数自动设置它

要使相关内容块基于与正在查看的节点相同的术语显示内容,需要向视图中添加分类术语id参数。 然后,您可以尝试“设置默认参数”并使用“来自URL的分类术语”(节点选项)

如果这不起作用,您可能需要使用默认参数区域中的php代码从节点获取相关的tid,并使用node_load或menu_get_object之类的内容加载节点

e、 g差不多

if($node = menu_get_object()){
  if(isset($node->field_shared_category[$node->language][0]['tid'])){
    return $node->field_shared_category[$node->language][0]['tid'];
  }
}

在块视图中使用上下文过滤器可以显示相关内容。此块视图将包含与用户查看的当前内容关联的内容


您可以转到“”博客帖子,获取创建此块视图的分步说明。

谢谢您的回复!不过我确实让它起作用了。我在我的内容窗格上设置了一个上下文过滤器,并让页面管理器将术语从节点发送到窗格。