2012-08-09 211 views
0

我试图创建一个自定义搜索结果页面,该页面不仅搜索标题,而且还搜索自定义字段。 我一直在通过代码中的“创建搜索页面”页面,但由于某种原因,搜索结果使用了新的searchpage.php代码。Wordpress自定义搜索结果页面

我做什么是用下面的代码创建searchform.php页:(请注意我添加了一个PAGE_ID = 8057,因为我已经添加使用新的搜索模板的页面。)

<form role="search" method="get" id="searchform" action="<?php echo home_url('/'); ?>?page_id=8057"> 
    <div><label class="screen-reader-text" for="s">Search for(custom):</label> 
    <input type="text" value="" name="s" id="s" /> 
    <input class="sprites" type="submit" id="searchsubmit" value="Search" /> 
    </div> 
</form> 

,我已经创建了默认代码searchpage.php食品给我:

<p>Search Results:</p><BR> 
<?php get_search_form(); ?> 
     <?php 
global $query_string; 

$query_args = explode("&", $query_string); 
$search_query = array(); 

foreach($query_args as $key => $string) { 
    $query_split = explode("=", $string); 
    $search_query[$query_split[0]] = urldecode($query_split[1]); 
} // foreach 

$search = new WP_Query($search_query); 
?> 
<?php 
global $wp_query; 
$total_results = $wp_query->found_posts; 
?> 

我还没有做的代码和查询,但调整我想首先要解决的问题搜索表单不会显示searchpage.php结果,而是链接到默认搜索结果s页面。 例如后,我做了搜索我收到此网址:

http://localhost/?s=mysearchquery 

任何想法是如何让这个出发?

谢谢

回答

1

的searchpage.php是一个搜索页面选择,如果你想创建一个搜索结果页面,您需要创建的search.php文件来代替。

0

你必须在你searchpage.php文件的顶部添加以下行现在

/* 
* Template Name: Search Results Page 
* Description: Whatever you want to write here. 
*/ 

,进入管理面板并创建一个新的页面,并给它一个标题和分配“搜索结果页面“模板从右侧的页面属性部分。不要将任何内容添加到页面。

现在,尝试搜索,它应该工作。

注意:用户将无法在此页面上登陆,如果他有“输入”,在搜索框的东西,点击进入。此操作默认将 重定向到search.php页面。您只能在 searchpage.php土地当用户点击了“超链接”的URL 作为

<?php echo home_url('/'); ?>?page_id=8057