还添加了使用标签变量创建搜索以获得更详细的结果

时间:2014-09-15 作者:Jack Stanson

Wordpress搜索结果肯定不是我们见过的最好的索引和搜索功能。。如果在搜索中添加多个标记变量以获得更精确的结果工作?

例如:

默认搜索查询:www.example.com/?s=kidsbook

如果我们在搜索结果中添加更多的标签(例如女性作家和畅销书),会怎么样。因此,只发布kidsbook的结果,并且从这些结果中只发布女性作家的畅销书。

下面的例子有用吗?

www.example.com/?s=kidsbook&tag=femaleauthor&tag=bestseller
搜索是否接受这两个标记?

最后一个问题,这种类型的搜索会给服务器带来更大的负载吗?

谢谢你的回答。

1 个回复
最合适的回答,由SO网友:Tomás Cot 整理而成

在表单中添加一个新输入,名称为key,您可以使用函数通过WP\\u query轻松访问与参数支持程序匹配的查询变量get_query_var.

例如,您可以尝试生成如下URL:

http://example.com/?s=test&tag=5-personas,4-personas
get_query_var(tag), 获取值,然后创建自定义WP_Query 使用该参数。

$query = new WP_Query(
 array(
    \'s\' => get_query_var(\'s\'), 
    \'tag\' => get_query_var(\'tag\')
) );
需要考虑的一点是,URL中不能有两个相同的参数,可以,但不能使用get_query_var 函数获取值。

您可以使用jQuery从select 具有的元素multiple属性,并将选择传递给名为“tag”的输入,还有其他解决方法。

查询不会对性能产生太大影响。

我希望这能让你知道该怎么做。

结束

相关推荐

WordPress Search

我正试图在我的一个网站上写一个搜索功能,它似乎并没有吸引任何页面,只有帖子。下面是代码。搜索表单: <form role=\"search\" method=\"get\" id=\"searchform\" action=\"<?php echo home_url( \'/\' ); ?>\"> <input type=\"text\" value=\"Search\" onblur=\"if (this.value