Jetpack Infinite Scroll忽略已经显示的帖子

时间:2015-10-11 11:09:13

标签: php wordpress infinite-scroll jetpack

我在我们网站的主页上使用JetPack的无限滚动,它工作正常,但我也希望在那里显示某些帖子。

如果帖子显示在无限循环之外,我希望将其删除,这样就没有重复。

我使用bm_ignoreposts建立了一个全局数组,并将其添加到无限循环渲染中,但由于某种原因它无法正常工作。这是代码。

Functions.php

无限渲染器。

add_filter( 'infinite_scroll_archive_supported', 'tweakjp_custom_is_support' );

function mm_infinite_scroll_render() {
global $post;
        while ( have_posts() ) : the_post();
            bm_ignorePost($post->ID);
            get_template_part( 'content-inf' );
        endwhile;
}

查询

function mm_infinite_scroll_query_args($args) {
    $new_args = array(
        'posts_per_page'   => $args['posts_per_page'],
        'paged'   => $args['paged'],
        'orderby'          => 'date',
        'order'            => 'DESC',
        'post_type'        => array( 'post', 'features', 'it_hardware', 'videos' ),
        'post_status'      => 'publish',
    );

    return $new_args;
}

这里的参考是忽略帖子代码:

function bm_ignorePost ($id) {
    if (!is_page()) {
        global $bmIgnorePosts;
        $bmIgnorePosts[] = $id;
    }
}

1 个答案:

答案 0 :(得分:0)

我决定不再使用JetPack,而是选择使用AJAX加载运行新查询的新帖子的自定义Javascript版本。

在与Jetpack支持人员交谈后,他们认为根据插件的工作原理无法实现。