从Wordpress搜索结果中排除特定帖子与found_posts同步

时间:2016-04-03 09:06:01

标签: wordpress loops filter

我有一个搜索结果页面,只显示wordpress页面网址列表。我想排除显示在此列表中的特定页面URL。该列表如下所示:(总计数来自 - > found_post)。

页面结果(共10个):

为了确保我的found_posts总数是正确的,我想我会像这样制作一个全局过滤器并将其放在functions.php中:

function search_filter( $query ) {

    if ( !is_admin() ) {
        $exclude = array(
            16,
            261,
            260
        );
        $query->set( 'post__not_in', $exclude );
    }
}
add_action( 'pre_get_posts', 'search_filter' );

如果不是因为搜索结果页面是我不希望出现在搜索结果中的事实,这将工作正常。将此添加到排除数组会导致搜索结果页面本身404'ing。

所以我想我可以像这样检查实际的模板循环:

if(!in_array(get_the_ID(), $exclude)):

但是我的found_posts计数错了,它会计算帖子,但不会显示。

有没有办法从显示的结果中排除帖子,并在found_posts计数中反映这一点?

0 个答案:

没有答案