<?php
global $wp_query;
// текущая страница
$paged = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;
// максимум страниц
$max_pages = $wp_query->max_num_pages;
$queried_object = get_queried_object();
$current_cat_id = $queried_object->term_id; // Узнаём ID текущей категории
if($current_cat_id){
$t = 'data-catid = '.$current_cat_id.' ';
}
// если текущая страница меньше, чем максимум страниц, то выводим кнопку
if( $paged < $max_pages ) {
echo '<br><br><div id="loadmore" style="text-align:center;">
<button data-max_pages="' . $max_pages . '" data-paged="' . $paged . '" data-post_type="post" '.$t.'class="next-button w-inline-block"><div class="title-medium">Показать еще</div></button>
</div>';
} ?>
jQuery(function($){
// определяем в переменные кнопку, текущую страницу и максимальное кол-во страниц
var button = $( '#loadmore button' ),
paged = button.data( 'paged' ),
maxPages = button.data( 'max_pages' ),
post_type = button.data( 'post_type' ),
cat_id = button.data( 'catid' ),
pagination = $('.news-num-blk');
button.click( function( event ) {
event.preventDefault(); // предотвращаем клик по ссылке
$.ajax({
type : 'POST',
url : loadmore_url.ajaxurl, // получаем из wp_localize_script()
data : {
post_type : post_type,
paged : paged, // номер текущей страниц
action : 'loadmore_action', // экшен для wp_ajax_ и wp_ajax_nopriv_
cat_id : cat_id
},
beforeSend : function( xhr ) {
button.html( '<div class="title-medium">Загружаем...</div>' );
},
success : function( data ){
// подсветка текущей страницы
// pagination.find('.page-numbers:not(span, .prev, .next)').eq(paged).addClass('current');
paged++; // инкремент номера страницы
// button.parent().before( data );
// console.log(data);
pagination.before( data );
button.html( '<div class="title-medium">Загрузить ещё</div>' );
// если последняя страница, то удаляем кнопку
if( paged == maxPages ) {
button.remove();
}
}
});
});
});