WordPress自定义搜索页面无法正常工作

时间:2017-02-19 20:41:23

标签: php wordpress

我正在创建一个新的WordPress网站。尝试创建自定义搜索页面但是当我要搜索任何内容时,它没有显示任何结果。但查询仍然有帖子。

$s=get_search_query();
     $args = array(
      's' =>$s
     );
// The Query
$the_query = new WP_Query( $args ); // Just tested the search query

get_header();
?>

<div class="main_content">
    <div class="row">
        <div class="col-sm-12">
            <div class="custom-breadcrumb">
                <h1>News Digest &horbar; <?php printf( __( '%s', 'decouvr' ), get_search_query() ); ?></h1>
                <?php
                schema_breadcrumb();
                ?>
            </div>
        </div>
    </div>
</div>

<div class="container container-most">

    <div class="row">

        <?php

        if ( $the_query->have_posts() ) :
            // Start the loop.
            while ( $the_query->have_posts() ) : the_post();
                get_template_part( 'content', get_post_format() );

                // End the loop.
            endwhile;

            // Previous/next page navigation.
            docuvr_paging_nav();
        // If no content, include the "No posts found" template.
        else :
            get_template_part( 'content', 'none' );
        endif;
        ?>

    </div>

</div>

<?php
get_footer();
?>

我需要在用户尝试搜索时重定向搜索页面。我使用了一个函数来重定向搜索页面

function search_url_rewrite () {
    if ( is_search() && !empty( $_GET['s'] ) ) {
        wp_redirect( home_url( '/news/' ) . urlencode( get_query_var( 's' ) ) );
        exit();
    }
}

add_action( 'template_redirect', ' search_url_rewrite ' );

它仍然无法正常工作。我尝试了很多方法来做到这一点。我只是堆在这里。当我使用默认搜索页面时,它还有一件事非常好用。大多数情况下我也需要重定向。我有什么不对,或者还有其他办法吗?

1 个答案:

答案 0 :(得分:0)

while ( $the_query->have_posts() ) : the_post();

中错过while ( $the_query->have_posts() ) : $the_query->the_post();的{​​{1}}上更改$the_query->

同时检查此路径the_post();是否正确