При скролле статьи внизу подгружается следующая статья, код такой
Проблемы которые не могу решить:
- в подгруженной статье не выводятся комментарии -
пример статьи
- function.php есть код рекламы РСЯ, который выводится перед заголовками, в подгруженной статье подгрузка не срабатывает
- в сайдбаре код vk группы почему то улетает к первой статье
/* Бесконечная прокрутка начало */
function centil_infinite_scroll($pid){
if (is_single()) { ?>
<script type="text/javascript" >
jQuery(document).ready(function($) {
$(window).scroll(function() {
var footerPos = $('#footer').last().position().top;
var pos = $(window).scrollTop();
// Load next article
if (pos+(screen.height*2) > footerPos) {
if ($(".centil-infinite-scroll").first().hasClass('working')) {
return false;
} else {
$(".centil-infinite-scroll").first().addClass('working');
}
var centilNextPostId = $(".centil-infinite-scroll").first().text();
var data = {
'action': 'centil_is',
'centilNextPostId': centilNextPostId
};
// since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
jQuery.post('<?php echo admin_url("admin-ajax.php"); ?>', data, function(response) {
$(".centil-infinite-scroll").first().replaceWith(response);
// In AJAX success event handler
$.getScript('https://allremont59.ru/wp-content/plugins/table-of-contents-plus/front.min.js');
}, 'html');
}
// Update new URL
var currUrl = $(".centil-post-header").first().attr("url");
var currTitle = $(".centil-post-header").first().attr("title");
if ($(".centil-post-header").length > 1 && history.pushState) {
for (var i=0; i<$(".centil-post-header").length; i++) {
if (pos+(screen.height/2) >= $(".centil-post-header").eq(i).next().position().top) {
currUrl = $(".centil-post-header").eq(i).attr("url");
currTitle = $(".centil-post-header").eq(i).attr("title");
}
}
}
if (location.href != currUrl) {
history.pushState({}, currTitle, currUrl);
}
});
});
</script>
<?php }
}
add_action( 'wp_head', 'centil_infinite_scroll' );
function centil_infinite_scroll_callback() {
if (isset($_POST['centilNextPostId']) && $_POST['centilNextPostId']) {
// The Query
$the_query = new WP_Query(array('p'=>$_POST['centilNextPostId']));
// The Loop
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
$the_query->the_post();
get_template_part( 'template-parts/content-infinite' );
}
}
/* Restore original Post Data */
wp_reset_postdata();
}
wp_die();
}
add_action( 'wp_ajax_centil_is', 'centil_infinite_scroll_callback' );
add_action( 'wp_ajax_nopriv_centil_is', 'centil_infinite_scroll_callback' );
/* Бесконечная прокрутка КОНЕЦ */