Ajax бесконечная прокрутка - PullRequest
0 голосов
/ 09 июля 2020

Помогите, пожалуйста. Когда я прокручиваю вниз, бывает, что он загружается как надо, и иногда дублирует записи несколько раз, иногда дублирует только одну запись, а иногда просто дублирует все несколько раз, а иногда загружается нормально. Помогите пожалуйста решить проблему, очень нужно, но нет представления. Пожалуйста, помогите

нестандартный шаблон. Теперь смотрите 3 сообщения.

<?php
$args = array(
    'post_type' => 'portfolio',
    'order'          => 'ASC',
    'post_status' => 'publish',
    'posts_per_page' => '3',
    'paged' => 1,
);
$query = new WP_Query( $args );
?>

<?php if ( $query->have_posts() ) : 
    <div class="blog-posts1">
        <?php while ( $query->have_posts() ) : $query->the_post(); 
                        <a href="<?php the_permalink(); ?>">Show</a>
        <?php endwhile; ?>
    </div>     
<?php endif; ?>

функция загрузки

function load_posts_by_ajax_callback() {
 check_ajax_referer('load_more_posts', 'security');
$paged = $_POST['page'];
$args = array(
    'post_type' => 'portfolio',
    'post_status' => 'publish',
    'posts_per_page' => '3',
    'paged' => $paged,
);
    $query = new WP_Query( $args );
    ?>
    
    <?php if ( $query->have_posts() ) : 
        <div class="blog-posts1">
            <?php while ( $query->have_posts() ) : $query->the_post(); 
                            <a href="<?php the_permalink(); ?>">Show</a>
            <?php endwhile; ?>
        </div>     
    <?php endif; wp_die(); ?>
}

add_action('wp_ajax_load_posts_by_ajax1', 'load_posts_by_ajax_callback1');
add_action('wp_ajax_nopriv_load_posts_by_ajax1', 'load_posts_by_ajax_callback1');

My ajax

jQuery(window).on('scroll', onScroll); 


function onScroll(){ 
  if (jQuery(window).scrollTop()   + jQuery(window).height()  > jQuery(document).height()) {
    
        var data = {
            'action': 'load_posts_by_ajax1',
            'page': page,
            'security1': blog1.security1
        };
      page++;
 
        jQuery.post(blog1.ajaxurl, data, function(response) {
            if(jQuery.trim(response) != '') {
                jQuery('.blog-posts1').append(response);
                  page++;
            } else {
                jQuery('.loadmore1').hide();
            }
        });
         }
    
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...