如何在wordpress中搜索后防止许多重复结果

时间:2017-12-04 08:08:18

标签: php wordpress

当我在我的wordpress网站(搜索小部件)中执行搜索时,我得到了具有相同结果的页面和页面。它不是重复内容,因为结果都指向完全相同的URL。显然,我想只显示一次每个不同的结果。

有人可以向我解释为什么会发生这种情况以及我该怎么办呢?

修改

这是我search.php的循环。没有searchform.php(据我所知)。

<main id="main" class="site-main" role="main">

    <?php if ( have_posts() ) : ?>

        <?php if ( $masonry_layout ) : ?>
        <div id="masonry-loop">
        <?php endif; ?>

        <?php /* Start the Loop */ ?>
        <?php while ( have_posts() ) : the_post(); ?>

            <?php
            /**
             * Run the loop for the search to output the results.
             * If you want to overload this in a child theme then include a file
             * called content-search.php and that will be used instead.
             */
            get_template_part( 'template-parts/content', 'search' );
            ?>

        <?php endwhile; ?>

        <?php if ( $masonry_layout ) : ?>
        </div><!--/#masonry-loop-->
        <?php endif; ?>

        <?php the_posts_pagination(); ?>

    <?php else : ?>

        <?php get_template_part( 'template-parts/content', 'none' ); ?>

    <?php endif; ?>

    </main><!-- #main -->

1 个答案:

答案 0 :(得分:0)

找到它。

刚刚将此代码段添加到m functions.php文件中:

function search_distinct() {
return "DISTINCT";
}
add_filter('posts_distinct', 'search_distinct');