Как настроить пагинацию?

Делал пагинацию по этой статье.
Вот код с страницы:
<?php $paged = ( get_query_var('page') ) ? get_query_var('page') : 1; ?>
		<?php 
		$args = array(
			'cat' => '2',
			'posts_per_page' => 4,
			'paged' => $paged
		);
		?>
		<?php $query = new WP_Query( $args ); ?>
		<?php if ( $query->have_posts() ) : while ( $query->have_posts() ) : $query->the_post(); ?>

			<div class="col-md-3">
				<h4><?php the_title(); ?></h4>
				<p><?php the_content(); ?></p>
			</div>

		<?php  endwhile; ?>

  <?php
					if (function_exists(ge_pagination)) {
						ge_pagination($query->max_num_pages,"",$paged);
					}
					?>

					<?php wp_reset_postdata(); ?>

	<?php else: ?>
		<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
	<?php endif; ?>

Вот из functions/php:
<?php
function tes_pagination($numpages = '', $pagerange = '', $paged='') {

	if (empty($pagerange)) {
		$pagerange = 2;
	}

	global $paged;
	if (empty($paged)) {
		$paged = 1;
	}
	if ($numpages == '') {
		global $wp_query;
		$numpages = $wp_query->max_num_pages;
		if(!$numpages) {
			$numpages = 1;
		}
	}

	$pagination_args = array(
		'base'            => get_pagenum_link(1) . '%_%',
		'format'          => 'page/%#%',
		'total'           => $numpages,
		'current'         => $paged,
		'show_all'        => False,
		'end_size'        => 1,
		'mid_size'        => $pagerange,
		'prev_next'       => True,
		'prev_text'       => __('&laquo;'),
		'next_text'       => __('&raquo;'),
		'type'            => 'plain',
		'add_args'        => false,
		'add_fragment'    => ''
	);

	$paginate_links = paginate_links($pagination_args);

	if ($paginate_links) {
		echo "<nav class='custom-pagination'>";
		echo "<span class='page-numbers page-num'>Page " . $paged . " of " . $numpages . "</span> ";
		echo $paginate_links;
		echo "</nav>";
	}

}

Но при использований пагинаций страница меняется но не статьи, но если изменить цифру на этой строчке то меняются посты
<?php $paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1; ?>

На
<?php $paged = ( get_query_var('paged') ) ? get_query_var('paged') : 2; ?>

Как заставить это нормально работать?
  • Вопрос задан
  • 248 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы