gpt4 book ai didi

php - Wordpress + Algolia 查询参数冲突

转载 作者:行者123 更新时间:2023-12-03 18:54:48 24 4
gpt4 key购买 nike

在我的 Wordpress 网站上,我使用 Algolia 搜索 Woocommerce 产品。

一切都在类别页面上按预期工作,例如www.example.com/products
问题出现在域根目录上。当我进行搜索时,正在添加查询参数:www.example.com/?q=myquery&hPP=12&idx=all&p=0&is_v=1 ,现在如果我重新加载页面,我将被带到博客文章页面,很可能是 Wordpress 原生搜索结果......

所需的操作与在类别页面或除根以外的任何位置上的操作相同,因此在页面重新加载后,它应该显示完全相同的页面和完全相同的搜索查询。

我能想到的可能解决方案:

  • 禁用 Wordpress 的查询参数,以便在 URL 包含一个
  • 时不会执行任何操作
  • 将 Algolia 的查询参数更改为 Wordpress 不会将其作为搜索查询的内容,问题似乎是 &p=0 ,删除它,然后重新加载页面按需要工作。

  • PS!在我选择的 WordPress 永久链接设置中 http://www.domain.com/%postname%/

    最佳答案

    似乎您已经意识到这一点,但由于其他人可能会偶然发现您的问题,我将在这里声明,在撰写本文时,用于 WordPress 集成的 Algolia 目前处于测试阶段且不受支持(请参阅警告在 the repo's README 中)。

    此外,根据您正在谈论的参数,您似乎正在使用存储库的开发分支中的最新版本。

    在这个版本中,查询参数由内部使用的库添加到 URL 中,称为 instantsearch.js 。 .

    这个库在初始化时会暴露 urlSync.useHash 参数将使库将这些参数存储在散列而不是查询参数中。只需将其设置为 true .

    If set to true, the url will be hash based. Otherwise, it’ll use the query parameters using the modern history API.



    由于这里似乎只有一个参数会引起问题, urlSync.mapping 参数可能是更好的解决方案。但是,我不确定 instantsearch.js 中是否提供此选项。集成使用的版本。

    Object used to define replacement query parameter to use in place of another. Keys are current query parameters and value the new value, e.g. { q: 'query' }.



    在您的情况下,这将是 { p: 'new_parameter_name_that_wont_conflict' } .

    关于php - Wordpress + Algolia 查询参数冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36908613/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com