我在一个视图中有四个暴露的过滤器。我想创建 2 块暴露的过滤器。我想要一个块中有 2 个过滤器,第二个块中有 2 个。
2 回答
最后我在这个网址找到了这个问题的答案: http ://www.undpaul.de/en/blog/2013/06/17/split-views-exposed-form
解决方案:: 在 Views 中,您可以克隆现有的显示,这仅意味着创建它的普通副本。在我们的例子中,我克隆了包含暴露表单的页面显示以仅拆分和修改一些过滤器设置。
其他选项(尤其是页面路径)没有改变。
如果您现在查看块列表,则两个视图显示都有一个块,其中包含相应的公开表单。这些块可以显示在不同的页面和不同的区域。
然后你可以创建一个自定义模块并实现hook_form_alter () 来改变过滤形式。
为了能够做到这一点,您必须更改weight of your custom module
表格的形式system
。让它大于 10(因为它是视图模块的重量)
你可以实现hook_form_alter () 来改变表单过滤器的行为。
您可以在过滤器之后/之前添加任何 HTML,使用$form['ANY_ELEMENT']['#prefix']
和$form['ANY_ELEMENT']['#suffix']
OR 使用fieldsets
. 然后让 CSS 发挥作用。
$form_id 通常采用 [views_form_ the id of the view
_ `the id of the display
] 的格式。例如:views_form_my_view_page
PS这是我目前能找到的唯一解决方案。
真的希望这行得通……穆罕默德。