很多時候我們往往只想搜索特定分類下的文章,但是大多數 WordPress 主題提供的搜索功能只支持搜索全部分類下的文章。那怎麼辦呢?修改一下主題模板中搜索框代碼就可以了,代碼如下:
|
<form action="<?phpbloginfo('home');?>"method="get"> <div> <input type="text"value="<?phpechowp_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"> <option value="11"selected="selected"> 搜音樂</option> <option value="22"> 搜圖片</option> </select> |
基於以上思想,其他搜索方式,就有待大家去挖掘了。
分類 id 的獲取方式:進入 WordPress 管理後台,依次進入 文章 -> 分類目錄,各個分類標題的鏈接類似,wp-admin/edit-tags.php?action=edit&taxonomy=category&tag_ID=888&post_type=post,這其中 tag_ID=888,888 就是該分類的 id