【问题标题】:Add a custom filter to search in magento2添加自定义过滤器以在 magento2 中搜索
【发布时间】:2016-03-02 16:48:56
【问题描述】:

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

例如:

我创建了一个属性,命名为:“文本字段”类型的“标志”,在店面中将不可见。

我有 3 个产品:

名称 |描述 |标志

产品1 |说明1 | 1

产品2 |说明2 | 1

产品3 |说明3 | 0

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

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

提前致谢

【问题讨论】:

    标签: magento2 magento-2.0


    【解决方案1】:

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

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

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

    【讨论】:

    • 感谢 Akshay 的回答,我希望用户在查询中看不到该选项,任何聪明的用户都可以更改参数值,查询将返回所有产品
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-17
    相关资源
    最近更新 更多