WordPress搜索特定分类下的文章

目前大多数WordPress主题提供的搜索功能只支持搜索全部分类下的文章。那如果我们只想搜索指定分类下的文章,应该怎么办呢?方法很简单,修改一下主题模板中搜索框代码就可以了,代码如下:

<form action="<?php bloginfo('home'); ?>" method="get">
    <div>
        <input type="text" value="<?php echo wp_specialchars($s, 1); ?>" name="s" id="s" />
        <input type="hidden" name="cat" value="22" />
        <input type="submit" id="searchsubmit" value="Search" />
    </div>
</form>

搜索特定分类的方法是,给搜索表单附带一个name=”cat”的input元素即可,input域的值即为分类的id号;如果不给搜索表单提供分类id,则默认搜索全部分类下的文章。以上代码第四行中value=”22″,22即分类的id号,这样该搜索框只搜索分类id 22 下的文章。

如果你想让用户自行选择他想要搜索的分类,可以用下拉列表形式,将第四行代码改成如下代码即可:

<select name="cat" class="search-option zhutimao">
    <option value="11" selected="selected">插件</option>
    <option value="22">模板</option>
</select>