Search Page Returns Nothing

时间:2012-11-05 作者:Dz.slick

我现在正在做这个website 测试表明搜索页面工作不正常。每次有人搜索某个东西,结果都是空白的。搜索页面的代码如下所示。

Search Form:

<form role="search" method="get" id="searchform" action="/search/" >
    <div><label class="screen-reader-text" for="s">Search for:</label>
    <input type="text" value="" name="s" id="s" />
    <input type="image" src="<?php bloginfo(\'stylesheet_directory\'); ?>/images/searcher1.png"id="searchsubmit" value="Search" />
    </div>
    </form> 

Search Page:

<?php
    if ( isset( $_REQUEST[ \'search\' ] ) ) {
        // run search query
        query_posts( array(
            \'s\' => $_REQUEST[ \'search\' ],
            \'post_type\' => $_REQUEST[ \'post_type\' ],

        ) );

        // loop
        if ( have_posts() ) : while ( have_posts() ) :
            // loop through results here
        endwhile; endif;

        // return to original query
        wp_reset_query();
    }

2 个回复
最合适的回答,由SO网友:TheDeadMedic 整理而成

Change action="/search/" to action="<?php bloginfo( \'url\' ) ?>"

SO网友:Mridul Aggarwal

您只需要在搜索页上显示此部分,请删除所有其余部分

// loop
if ( have_posts() ) : while ( have_posts() ) : the_post();
    // loop through results here
endwhile; endif;

结束

相关推荐

altering search terms

如何过滤或更改用户在搜索字段中输入的搜索词?有挂钩吗?其想法是使用此功能过滤掉2-3个字母的“filler”单词(“on”、“and”、“The”等)function prepSearchStr($str){ $str=preg_replace(\'©[^a-zA-Z0-9]©\', \' \', $str); $str=preg_replace(\'©(?<=\\s|^)(([a-zA-Z]{1,3})|[0-9]{1,2})(?=\\s|$)©\', \' \',