我在我的网站上建立了一个自定义form
搜索过滤。我正在使用隐藏的输入字段来决定选择了哪种类型的搜索过滤器。该值被传递,我在我的搜索页面上检查该值是什么,然后直接进入正确的搜索结果页面,如下所示:
<?php
$search_refer = $_GET['search_type'];
if($search_refer == 'members') {
load_template(TEMPLATEPATH . '/search-members.php');
} else if($search_refer == 'event') {
load_template(TEMPLATEPATH . '/search-member-event.php');
} else {
load_template(TEMPLATEPATH . '/search-site.php');
}
?>
这是 HTML/PHP 中的两个字段
<div class="state"> // Sorting by user State
<input type="hidden" name="search_type" value="members">
<select id="stateDrop" name="state">
<option value="">State</option>
<?php
foreach($states as $state) {
echo '<option value="'.$state.'">'.$state.'</option>';
}
?>
</select>
</div>
<div class="sort-event"> // Sorting by an Event
<input type="hidden" name="search_type" value="event">
<select id="eventDrop" name="event">
<option value="">Event</option>
<?php
$args = array(
'post_type' => 'events',
'order' => 'ASC'
);
$eQuery = new WP_Query( $args );
while( $eQuery->have_posts() ) : $eQuery->the_post();
echo '<option value="'.$eQuery->post->post_title.'">'.$eQuery->post->post_title.'</option>';
endwhile;
wp_reset_query();
?>
</select>
</div>
两者都将名称search_type
作为隐藏名称,但值不同。members
与event
。我的问题是当您单击提交按钮时,收到的值始终是最后一个隐藏的输入值。例如event
。
有没有办法决定选择哪个字段,以便我可以将搜索结果定向到正确的页面。(搜索页面根据搜索获取不同的信息)。
谢谢,