在 Drupal 8 的视图块中使用 Content ID 上下文过滤器
Using a Content ID Contextual Filter in a Views Block in Drupal 8
我正在尝试创建一个视图,它不会显示一个内容类型的所有节点的列表,而是仅显示一个基于节点 ID 的内容类型的单个节点。在 Drupal 7 中,我几乎完全在视图内容窗格中工作,并且能够基于 NID 实现这一点,然后将参数输入设置为 From Context: Content ID。我如何在 Drupal 8 中使用 Blocks 获得相似的结果?
我有一个正确配置的视图,可以显示某种内容类型的所有节点。我试图添加一个上下文过滤器:ID;但我不知道如何配置它以获得不是所有结果的结果。
提前致谢!
当您编辑上下文过滤器内容 ID 时,您有:
WHEN THE FILTER VALUE IS NOT AVAILABLE
(base view是没有filter构建的,是这样的)
选中 Provide default value
以设置应如何检索过滤器值,然后您可以选择一种类型,例如 来自 URL 的内容 ID,或 查询参数,等等
例如,对于查询参数,您可以设置参数名称和回退值。在您的情况下,您可以将 nid
之类的内容设置为查询参数,将 all
或固定节点 ID 设置为后备值('all' 默认情况下是异常值,即禁用过滤器).
鉴于此示例,您只需将查询 ?nid=5
添加到请求路径。似乎你需要默认过滤块,在这种情况下只需设置一个固定的节点 ID(例如 5
而不是 all
)作为视图管理中的回退值,然后块将被过滤默认方式相同。
我正在尝试创建一个视图,它不会显示一个内容类型的所有节点的列表,而是仅显示一个基于节点 ID 的内容类型的单个节点。在 Drupal 7 中,我几乎完全在视图内容窗格中工作,并且能够基于 NID 实现这一点,然后将参数输入设置为 From Context: Content ID。我如何在 Drupal 8 中使用 Blocks 获得相似的结果?
我有一个正确配置的视图,可以显示某种内容类型的所有节点。我试图添加一个上下文过滤器:ID;但我不知道如何配置它以获得不是所有结果的结果。
提前致谢!
当您编辑上下文过滤器内容 ID 时,您有:
WHEN THE FILTER VALUE IS NOT AVAILABLE
(base view是没有filter构建的,是这样的)
选中 Provide default value
以设置应如何检索过滤器值,然后您可以选择一种类型,例如 来自 URL 的内容 ID,或 查询参数,等等
例如,对于查询参数,您可以设置参数名称和回退值。在您的情况下,您可以将 nid
之类的内容设置为查询参数,将 all
或固定节点 ID 设置为后备值('all' 默认情况下是异常值,即禁用过滤器).
鉴于此示例,您只需将查询 ?nid=5
添加到请求路径。似乎你需要默认过滤块,在这种情况下只需设置一个固定的节点 ID(例如 5
而不是 all
)作为视图管理中的回退值,然后块将被过滤默认方式相同。