添加自定义过滤器以在magento2中搜索

时间:2016-03-02 16:48:57

标签: magento2 magento-2.0

我是Magento2的新手,我在尝试向搜索模块添加新过滤器时遇到问题。

例如:

我创建了一个名称为“text field”类型的“flag”属性,它在店面中是不可见的。

我有3个产品:

名称|描述|标志

产品1 | Description1 | 1

产品2 | Description2 | 1

产品3 | Description3 | 0

当我在搜索框“产品”中输入时,默认情况下Magento2会返回所有产品,因为所有产品都与 搜索,我想要的是在搜索中添加一个过滤器,只返回flag = 1的产品,因此它只返回产品1和2.

我不知道我必须覆盖的确切块或模型是什么。

提前致谢

1 个答案:

答案 0 :(得分:1)

您可以在搜索表单下添加此属性作为隐藏字段,其中包含您要过滤的值。当用户点击搜索按钮时,它会通过在查询字符串中添加一个参数来执行搜索,即 ?q = product& flag = 1 ,您将获得预期结果。通过这种方式,您无需覆盖任何块或控制器。但是您需要覆盖默认搜索表单。 URL下方可以帮助您覆盖核心magento文件。

参考网址https://magento.stackexchange.com/questions/84550/magento-2-override-base-view-file

注意:此技术不适用于自动搜索。在这种情况下,您需要覆盖核心搜索块。

相关问题