我在WordPress中自定义搜索表单,我似乎无法向表单添加其他参数。以下是我的表格
<form id="searchform" action="/">
<div class="row">
<input type="input" name="searchvalue" class="searchinput" placeholder="Search..">
</div>
<div class="row">
<label>Province</label>
<select name="province" id="province" class="filterpostsbyprovince">
<option value="0" selected="selected">Select Province</option>
</select>
</div>
<div class="row">
<input type="submit" value="SEARCH" style="cursor: pointer">
</div>
<input type="hidden" name="filtersearch" value="1">
<input type="hidden" name="s" value="search">
</form>
根据以上表单,我的搜索查询应该类似于?s=search&filtersearch=1&province=""&searchvalue=""
,但WordPress会将s =搜索传递到搜索结果页面。我在我的函数文件中添加了filtersearch,但这似乎没有帮助
function filter_add_query_vars($query_vars) {
$query_vars[] = 'filtersearch';
return $query_vars;
}
add_filter( 'query_vars', 'filter_add_query_vars' );
我尝试删除永久链接,但这没有帮助。有人可以帮帮我吗?
答案 0 :(得分:1)
不是一个确切的答案,但你可能想看看如何使用$ _GET变量给出你的结构。
您希望永久链接看起来像这样(请注意引号已删除):
?s=search&filtersearch=1&province=Example&searchvalue=Another-Example
要获取省的值,您可以在PHP中使用它:
$province = $_GET['province']
然后,您应该可以在函数中使用它来过滤搜索。