0

我在一个页面上有四个块视图(称为“信息”页面),它们按邻近度过滤,为我提供与一个特定过滤位置相关的四条信息。

我希望能够创建一个带有暴露邻近过滤器的介绍页面,执行该过滤器时会将我带到(信息)页面,并同时过滤在介绍页面上输入的接近度的四个视图。

我怎样才能做到这一点?我是 php 新手,但正在学习....愿意努力工作!

谢谢

4

1 回答 1

3

如果您在 Drupal 6 中使用视图,答案是肯定的——有一些重要的警告。

与 Drupal 中的普通表单不同,视图的公开过滤器值以 $_GET 参数而不是 $_POST 的形式出现。这意味着您可以通过将 ?filter=value&filter2=value2 etc... 附加到当前 URL 来填充公开的过滤器。

更重要的是,如果同一页面上的多个视图在 URL 中查找相同的过滤器键,它们都将使用传入的过滤器值。您需要配置每个视图的公开过滤器列表,以确保它们都使用相同的过滤器列表,并为传入值使用相同的“键”列表。如果您希望过滤器表单只出现一次,您可能还需要进行一些巧妙的处理——默认情况下,视图会希望它出现在每个视图上,但是每个视图都有一个选项可以将其暴露的过滤器移动到一个块中; 这样做并且不启用暴露的过滤器块有效地隐藏了视图的暴露过滤器小部件,同时如果过滤器通过 URL 进入,则保持过滤器处于活动状态。

总结一下:确保所有四个视图都具有相同的公开过滤器列表,并且对过滤器使用相同的“键”。隐藏除一个视图之外的所有视图上暴露的过滤器小部件。到那时,它应该可以工作。

于 2009-03-30T16:26:43.970 回答