我创建了一个搜索页面uising公开的过滤器和视图模块。用户可以从不同的值中进行选择,以获得具有特定结果的表(返回节点字段)。此页面位于mysite.com/search下。问题是我想在我的主页上放一个简化版的搜索表单(假设只是关键字搜索框+一个或两个复选框)。这可以是块或视图。当用户按下搜索按钮时,我想将他重定向到搜索页面并显示结果。在这里,用户应该能够以普通的方式改进他的搜索。我想这可以通过HTTP GET参数实现并指向实际的搜索站点。我想知道如果我没有在我的主页上硬编码表格,即使用视图,块等,我可以做到这一点。我希望这是有道理的。任何帮助将不胜感激。
答案 0 :(得分:2)
修改强>
最终结果是,您希望让一个表单进入搜索结果页面,并在搜索结果页面上显示另一个高级表单。此解决方案通过为每个表单创建两个具有不同过滤器的相同视图来实现此目的
当有人使用简化表单时,他们会被带到example.com/search,当他们在该页面上并使用高级表单时,他们会被带到example.com/search/advanced。由于视图与类似路径相同,因此最终用户不会知道差异。
以下是如何实现这一目标:
现在,您将拥有两个视图页面,搜索和搜索/高级,以及两个块,一个简化的搜索表单和一个高级搜索表单。
转到块管理,并启用简化搜索块。使用路径特定的可见性设置来设置简化搜索框的显示位置。
现在,启用高级搜索块。使用特定于路径的可见性设置将可见性设置为:
search
search/*
假设你想用另一组过滤器创建另一个简化的搜索块(让我们称之为替代)。您也可以这样做:在步骤2-4中创建另一个页面显示,但不是使用路径搜索,而是给它一个不同的路径: search / alternate 。您可以根据需要添加尽可能多的具有不同过滤器的简化表单,并且当您使用它们时,它们都将具有高级搜索表单和相同的结果。