WordPress 中的动态搜索

Dynamic search in WordPress

我正在为客户开发 WordPress 网站,我需要 header 中的自定义搜索框。该站点正在使用来自 CNET 的外部 e-commerce 工具。因此,他们 WordPress 网站中的 e-commerce 页面包含一个向他们的 CNET 商店显示 URL 的 iframe。

所以在商店搜索页面上,iFrame URL 看起来像:

https://store.com/ourstore/Search/Category/?search_string=

显然,您可以在此处将搜索词传递到 URL 字符串中。因此,如果我想搜索戴尔笔记本电脑,在 iFrame 中使用的 URL 将是:

https://store.com/ourstore/Search/Category/?search_string=dell%20laptop

我需要做的是在header里面放一个搜索框,把输入到搜索框里的搜索词传到高级搜索页面,把搜索词放到iFrame的URL。

有办法吗?我是 WordPress 的新手,但我一直在编写 PHP 代码。我只是不确定在 WordPress 中的哪个位置查看。

如果我理解你的问题,你应该可以使用 the_search_query();

https://codex.wordpress.org/Function_Reference/the_search_query

此函数只输出当前 WordPress 搜索查询的内容。所以在调用 iFrame 的代码中,您可以这样做:

<iframe src="https://store.com/ourstore/Search/Category/?search_string=<?php echo get_search_query(); ?>">

现在,由于需要对搜索词进行编码以便在 URL 中使用,您可以使用 PHP 函数 urlencode();

<iframe src="https://store.com/ourstore/Search/Category/?search_string=<?php urlencode(get_search_query()); ?>">