【问题标题】:Bringing the Wordpress Backend posts search to the frontend将 Wordpress 后端帖子搜索带到前端
【发布时间】:2023-03-09 03:10:02
【问题描述】:

我在一家使用 WordPress 和已停产(但仍在使用)的购物插件/主题的商店工作。

前端搜索从来都不是很好,即使在对搜索查询的构建方式进行了一些更改之后。全文索引确实有点帮助,但现在基本上失败了,因为有很多(几乎)三字母产品名称,比如 t-700 / 700。

但是,在后端产品搜索(必须是自定义帖子类型)中,搜索很好。这正是店主想要的。

完美的做法是将这个后端搜索带到前端,要么通过调用正确的函数/钩子,要么通过复制相关代码。

代码结构将我指向 wp-includes/query.php,但我无法理解后端查询是如何工作的。我已经在网上搜索了几天,但我根本找不到任何东西。

非常感谢任何帮助或建议。非常感谢!

【问题讨论】:

    标签: wordpress search


    【解决方案1】:

    你在前端使用什么?您必须对前端的所有帖子使用 query_posts,因为它提供了在其中传递所有可能参数的选项。

    您可以查看此link 以供参考

    【讨论】:

    • 谢谢!前端使用一个普通的 SQL 查询,混合了 MATCH AGAINST(对于 strlen>3 的字符串)和 LIKE(对于 strlen == 2)。较短的字符串被忽略。您是否认为应该使用 query_posts 进行前端搜索?
    • SQL 查询如果它给你所需的结果就很好
    • 不幸的是,它没有。后端搜索很完美。
    【解决方案2】:

    我们需要更多信息来帮助您!如果不知道您使用的插件,或者至少不知道 query.php 中的内容,就无法为您提供帮助。

    这个搜索工具的代码是特定的,所以没有人能告诉你如何让它在你的前端工作。

    通常我会尝试将其复制到前端页面(或尝试在那里调用它),但这可能会有风险!后端和前端数据应该有不同的访问权限,这可能是你不能只是复制粘贴函数的原因。

    【讨论】:

    • 谢谢!后端搜索的代码在这里不是很具体……它是 wp-includes/query.php 中默认的 WordPress 搜索 api。我之前也尝试过复制,但失败了。
    猜你喜欢
    • 1970-01-01
    • 2018-09-21
    • 2021-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 1970-01-01
    • 2016-09-28
    相关资源
    最近更新 更多