如何创建仅应出现在特定网页上的自定义搜索表单?
使用此<?php get_search_form(); ?>
将wordpress的默认搜索表单插入页面。
添加此
searchform.php
到我的主题文件夹会覆盖整个网站的搜索功能
我想添加一个搜索表单,该表单仅显示特定类型的自定义帖子类型的帖子
和
表单应仅出现在特定页面中。(因此其他页面中的搜索表单不应受此影响)
如何实现这一目标。非常感谢任何帮助。
答案 0 :(得分:0)
请勿修改searchform.php,因为您要使用默认搜索其他页面。以下html代码将为您创建自定义表单。只需将代码粘贴到模板中,即可获得自定义搜索表单。
Old File: EMIA_001
Version number: 1.0.6113.27965
New File: EMIA_001
Version number: 1.0.6114.20817
假设您的自定义帖子类型是&#39; books&#39;。默认情况下,您的搜索结果将使用search.php文件。因此,我们将检查值是否为书籍,然后我们将加载用books-search.php编写的自定义搜索查询。否则你可以加载现有的代码是search.php。
在 search.php 文件中:
<form method="get" id="searchform" action="<?php bloginfo('home'); ?>/">
<input type="text" value="" name="s" id="s" />
<input type="hidden" name="search-type" value="books" />
<input name="submit" type="submit" value="Go" />
</form>
现在在 books-search.php 中使用:
if(isset($_GET['search-type'])) {
$type = $_GET['search-type'];
if($type == 'books') {
load_template(TEMPLATEPATH . '/books-search.php');
}
}else{
// Your current code
}
这将仅搜索书籍类型。