搜索算法以查找带和不带“-”符号的符号
Search algorithm to find symbols with and without "-" sign
在我的 prestashop
1.6 商店中,我的搜索算法有问题。每个产品在描述中都有兼容性,它看起来像:"DCP-9015"。我希望搜索算法在用户按单词查找时找到它:"DCP9015"。
我不知道如何让它工作。
您应该按以下方式尝试 mysql 的 Replace
功能:
SELECT *
FROM Table_XY
WHERE REPLACE(field2,'-','') LIKE '%' + field1 + '%'
您可以使用搜索别名工具。在您的后台转到 Preferences
> Search
并在顶部单击 Add new Alias
。
在这里您可以为 DCP-9015
提供一个别名。在 Alias
字段中键入 "DCP9015" 并在 Result
字段中键入 "DCP-9015".
保存并为您需要创建的每个别名重复此操作。
如果你有很多别名,你可以通过编程来完成。如果你真的想要,你也可以覆盖 /classes/Search.php
中的 indexation()
方法,但这需要更多的工作。
在我的 prestashop
1.6 商店中,我的搜索算法有问题。每个产品在描述中都有兼容性,它看起来像:"DCP-9015"。我希望搜索算法在用户按单词查找时找到它:"DCP9015"。
我不知道如何让它工作。
您应该按以下方式尝试 mysql 的 Replace
功能:
SELECT *
FROM Table_XY
WHERE REPLACE(field2,'-','') LIKE '%' + field1 + '%'
您可以使用搜索别名工具。在您的后台转到 Preferences
> Search
并在顶部单击 Add new Alias
。
在这里您可以为 DCP-9015
提供一个别名。在 Alias
字段中键入 "DCP9015" 并在 Result
字段中键入 "DCP-9015".
保存并为您需要创建的每个别名重复此操作。
如果你有很多别名,你可以通过编程来完成。如果你真的想要,你也可以覆盖 /classes/Search.php
中的 indexation()
方法,但这需要更多的工作。