如何在earch.php中显示搜索结果

时间:2020-06-01 作者:social

我正在尝试在搜索中显示搜索结果。php,但没有显示结果。它只是显示了以下搜索结果:然后我在搜索框中输入的关键字只剩下一个了。所以这个关键词的实际结果并没有从帖子中显示出来。

我有两个文件。这里是

搜索php

<?php get_header();  ?>

     <h5><b>SEARCH RESULTS</b></h5>
     <h3 class="mt-30 mb-15">SEARCH RESULTS FOR YOUR KEYWORD</h3>



<h1><?php printf( __( \'Search Results for: %s\'), \'<span>\' . get_search_query() . \'</span>\' ); ?></h1>


<?php get_footer();  ?>

和searchform。php

<form action="/" method="get">
    <label for="search">Search in <?php echo home_url( \'/\' ); ?></label>
    <input type="text" name="s" id="search" value="<?php the_search_query(); ?>" />
</form>


那我该怎么办?

1 个回复
SO网友:Pat J

get_search_query() 仅返回用户搜索的字符串。要显示搜索结果,您需要做更多的工作。

搜索结果将位于$wp_query, 您可以使用循环操作它(就像任何其他页面一样)。

以下代码改编自WordPress自己的代码Twenty Twenty theme\'sindex.php 文件,并可根据您的主题进行调整search.php 文件

if ( is_search() ) {
        global $wp_query;

        $archive_title = sprintf(
                \'%1$s %2$s\',
                \'<span class="color-accent">\' . __( \'Search:\', \'twentytwenty\' ) . \'</span>\',
                \'&ldquo;\' . get_search_query() . \'&rdquo;\'
        );

        if ( $wp_query->found_posts ) {
                $archive_subtitle = sprintf(
                        /* translators: %s: Number of search results. */
                        _n(
                                \'We found %s result for your search.\',
                                \'We found %s results for your search.\',
                                $wp_query->found_posts,
                                \'twentytwenty\'
                        ),
                        number_format_i18n( $wp_query->found_posts )
                );
        } else {
                $archive_subtitle = __( \'We could not find any results for your search. You can give it another try through the search form below.\', \'twentytwenty\' );
        }
}

if ( have_posts() ) {

        $i = 0;

        while ( have_posts() ) {
                $i++;
                if ( $i > 1 ) {
                        echo \'<hr class="post-separator styled-separator is-style-wide section-inner" aria-hidden="true" />\';
                }
                the_post();

                get_template_part( \'template-parts/content\', get_post_type() );

        }
    }

相关推荐

Search redirects to index

我打算使用标准的WordPress搜索,但当我尝试搜索时,我使用的是索引,而不是搜索结果。搜索url似乎正确:https://example.com/blog/?s=admissions搜索表单<form role=\"search\" method=\"get\" class=\"search-form\" action=\"https://example.com/blog/\"> <label for=\"search-form-5cb5f4940c0aa\">