如何在WordPress中使用多个搜索表单

最近,我们向您展示了如何限制WordPress中特定帖子类型的搜索结果。现在我们将向您展示如何完全创建不同/多个搜索表单。这样,每个表单可以限于搜索特定的帖子类型。虽然这不是很难,但它需要您对WordPress模板有基本的了解。

首先,您需要一些搜索表单。将以下代码放在您希望它们位于博客中的任何位置:

    <form method="get"  action="<?php bloginfo("home"); ?>/">  <input type="text" value="" name="s"  />  <input type="hidden" name="search-type" value="normal" />  <input name="submit" type="submit" value="Go" />  </form>    

为了指定此表单将执行的搜索类型,只需更改隐藏字段的值即可。现在它被设置为“正常”但它可以是你想要的任何东西。接下来,我们需要修改search.php文件。打开它并用这段代码替换其中的所有内容(首先将现有代码复制到剪贴板,你需要在一分钟内完成):

    <?php  if(isset($_GET["search-type"])) {      $type = $_GET["search-type"];      if($type == "random") {          load_template(TEMPLATEPATH . "/normal-search.php");      } elseif($type == "books") {          load_template(TEMPLATEPATH . "/books-search.php");      }  }  ?>  

所以我们假设你有两种搜索形式,普通和书籍。此代码只是将搜索重定向到处理该特定查询的php文件。现在我们只需要创建这些文件。所以,继续创建一个normal-search.php和books-search.php文件(只需用您正在使用的任何值替换“normal”和“books”)。

现在,在正常搜索中.php复制并粘贴以下代码:

    $args = array( "post_type" => "post" );  $args = array_merge( $args, $wp_query->query );  query_posts( $args );    

在粘贴您从search.php文件复制的剪贴板后,立即粘贴循环代码。总之,此代码将仅搜索您的常规博客帖子。现在,在books-search.php文件中添加这段代码并再次粘贴它后面的循环:

    $args = array( "post_type" => "books" );  $args = array_merge( $args, $wp_query->query );  query_posts( $args );    

最近,我们向您展示了如何限制WordPress中特定帖子类型的搜索结果。现在我们将向您展示如何完全创建不同/多个搜索表单。这样,每个表单可以限于搜索特定的帖子类型。虽然这不是很难,但它需要您对WordPress模板有基本的了解。

首先,您需要一些搜索表单。将以下代码放在您希望它们位于博客中的任何位置:

    <form method="get"  action="<?php bloginfo("home"); ?>/">  <input type="text" value="" name="s"  />  <input type="hidden" name="search-type" value="normal" />  <input name="submit" type="submit" value="Go" />  </form>    

为了指定此表单将执行的搜索类型,只需更改隐藏字段的值即可。现在它被设置为“正常”但它可以是你想要的任何东西。接下来,我们需要修改search.php文件。打开它并用这段代码替换其中的所有内容(首先将现有代码复制到剪贴板,你需要在一分钟内完成):

    <?php  if(isset($_GET["search-type"])) {      $type = $_GET["search-type"];      if($type == "random") {          load_template(TEMPLATEPATH . "/normal-search.php");      } elseif($type == "books") {          load_template(TEMPLATEPATH . "/books-search.php");      }  }  ?>  

所以我们假设你有两种搜索形式,普通和书籍。此代码只是将搜索重定向到处理该特定查询的php文件。现在我们只需要创建这些文件。所以,继续创建一个normal-search.php和books-search.php文件(只需用您正在使用的任何值替换“normal”和“books”)。

现在,在正常搜索中.php复制并粘贴以下代码:

    $args = array( "post_type" => "post" );  $args = array_merge( $args, $wp_query->query );  query_posts( $args );    

在粘贴您从search.php文件复制的剪贴板后,立即粘贴循环代码。总之,此代码将仅搜索您的常规博客帖子。现在,在books-search.php文件中添加这段代码并再次粘贴它后面的循环:

    $args = array( "post_type" => "books" );  $args = array_merge( $args, $wp_query->query );  query_posts( $args );    

相关推荐

发表回复

房先生
我们将24小时内回复。
2024-06-21 16:58:58
您好,有任何疑问请与我们联系!
您的工单我们已经收到,我们将会尽快跟您联系!
[QQ客服]
2781198
加我微信
[电话联系]
13585372227
[电子邮件]
chaoneo@163.com
取消

选择聊天工具: