我在一个有多个复选框的网站上工作,我想根据用户选择的内容显示结果。
大约有16个音乐复选框、8个场馆复选框和6个区域单选按钮。用户最多可以在音乐类别中选中3个复选框,在场馆中最多选中3个复选框,在地区中最多选中1个复选框。如何完成wordpress查询,该查询将仅显示所选类别中的帖子。
例如,如果用户选择了House、Techno和Dubstep in Music,Miami作为区域,并且他们想要搜索活动、音乐节和现场场馆,我如何使用wordpress查询来获取这些信息?
if(!empty($_POST)){
global $names;
$names = $_POST[\'music\'];
$music = implode(",", $names);
$echo $music;
}
这将显示所有选中的复选框,如house、dubstep、Miami、music Festival。现在我想展示house caegories、dubstep和music Festival类别以及迈阿密地区的帖子。我用的是
$args = array (
\'category_name\' => $music,
\'posts_per_page\' => 12,
\'orderby\' => \'title\',
\'order\' => \'ASC\',
);
$posts = query_posts($args);
但这将显示所有来自house,dubstep的帖子,这很好,但它也显示了所有来自音乐节的帖子,这些帖子甚至不属于house和dubstep类别。这是我的HTML
的代码checkboxes
<div class="customsearchul">
<div id="searchArea">
<ul>
<li><h4>Area:</h4></li>
<li>All of London<input type="radio" name="area" value="london" checked="london"/></li>
<li>North<input type="radio" name="area" value="north" /></li>
<li>East<input type="radio" name="area" value="east" /> </li>
<li>South<input type="radio" name="area" value="south" /></li>
<li>West<input type="radio" name="area" value="west" /></li>
<li>Central<input type="radio" name="area" value="central" /></li>
</ul>
</div>
</div>
<div class="customsearchul">
<div id="searchMusic">
<ul>
<li><h4>Music:</h4></li>
<li>House<input type="checkbox" name="music[]" value="house" /></li>
<li>Techno<input type="checkbox" name="music[]" value="techno" /></li>
<li>Trance<input type="checkbox" name="music[]" value="trance" /></li>
<li>Electronica<input type="checkbox" name="music[]" value="electronica" /></li>
<li>Drum and Bass<input type="checkbox" name="music[]" value="drum-and-bass" /></li>
<li>Garage<input type="checkbox" name="music[]" value="garage" /></li>
<li>Dubstep<input type="checkbox" name="music[]" value="dubstep" /></li>
<li>Trap<input type="checkbox" name="music[]" value="trap" /></li>
</ul>
</div>
</div>
<div class="customsearchul" style="margin-top: 34px;">
<div id="searchMusic">
<ul>
<li>Hip-Hop<input type="checkbox" id="music" name="music[]" value="hiphop" /></li>
<li>R\'n\'B<input type="checkbox" name="music[]" value="rnb" /></li>
<li>Rock<input type="checkbox" name="music[]" value="rock" /></li>
<li>Indie<input type="checkbox" name="music[]" value="indie" /></li>
<li>Reggae<input type="checkbox" name="music[]" value="reggae" /></li>
<li>Retro 80\'s/90\'s<input type="checkbox" name="music[]" value="retro" /></li>
<li>Party Bangers<input type="checkbox" name="music[]" value="party-bangers" /></li>
<li>Chart Hits<input type="checkbox" name="music[]" value="chart-hits" /></li>
</ul>
</div>
</div>
<div class="customsearchul">
<div id="searchType">
<ul>
<li><h4>Search Type:</h4></li>
<!--<li>Everything<input type="checkbox" name="occasion[]" value="debauchery" /></li> -->
<li>Nightclubs<input type="checkbox" name="occasion[]" id="nightclub" value="nightclub" checked="checked" /></li>
<li>Events & Tickets<input type="checkbox" name="occasion[]" value="club-guide" checked="checked" /> </li>
<li>Live Venues<input type="checkbox" name="occasion[]" value="festivals" checked="checked" /></li>
<li>Artist Interviews<input type="checkbox" name="occasion[]" value="artist" checked="checked" /></li>
</ul>
</div>
</div>
<!-- <input class="searchbutton" type="submit" value="Search" id="performsearch"/> -->
</form>
提前感谢您的帮助。