2011-12-02 271 views
2

我想显示多个类别的帖子。我创建了一个MULTISELECT降使用下面的代码的所有类别的下降:在wordpress中的页面上显示多个类别的帖子

<form method="get" action="<?php bloginfo('home');?>" > 
    <select name="cat" multiple> 
    <option value=""><?php echo esc_attr(__('Please Select Your Choice')); ?></option> 
    <?php 
     $categories= get_categories('show_count=0&orderby=name&echo=0&hierarchical=true&depth=1&taxonomy=category&exclude=1'); 
     foreach ($categories as $category) { 

     $option = "<option value=$category->term_id>"; 
     $option .= ucfirst($category->cat_name); 
     $option .= '</option>'; 
     echo $option; 
     } 
    ?> 
    </select> 
<input type="submit" id="searchsubmit" value="Search" name="submit"/> 
</form> 

每当我选择多个类别,我可以看到所有的猫IDS像网址:http://abcd.com/?cat=7&cat=8&cat=9但它显示使用archieve只有最后一类的帖子。 PHP文件。我想在页面上显示所有选择的类别帖子。

在此先感谢。

+0

可以显示由wp_dropdown_categories类别()。为了使这个多选择使用这个jQuery'$(“。multiselect”)。attr('multiple','multiple');'看看它[这里](http://article-stack.com/how-why/ wordpress-multi-select-category-box.amty) –

回答

2
<?php 
if(isset($_POST['submit'])) 
{ 
    $categories = $_POST['category']; 

    print_r($categories); 
} 
?> 
<form action="" method="post"> 
    <select name="category[]" size="5" multiple="multiple"> 
     <option value="1">Red</option> 
     <option value="2">Green</option> 
     <option value="3">Blue</option> 
     <option value="4">Yellow</option> 
     <option value="5">Orange</option> 
     <option value="6">Purple</option> 
     <option value="7">Megento</option> 
     <option value="8">Green</option> 
     <option value="9">White</option> 
     <option value="10">Black</option> 
    </select> 
    <input type="submit" name="submit" value="Submit" /> 
</form> 

注意使用在这里[] -

+0

您需要提供[]从表单的GET或POST结果中获取数组。像这样 -