Вывод всех записей custom post type review без пагинации:
<?php $args = array( 'post_type' => 'review', 'posts_per_page' => '999' ); $loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); ?> <?php the_content(); ?> <?php endwhile; wp_reset_query(); ?>
Вывод записей custom post type review с пагинацией на страницах архивов (index.php):
<?php global $query_string; query_posts($query_string.'&post_type=review&posts_per_page=10'); if(have_posts()) : while(have_posts()) : the_post(); ?> <?php the_content(); ?> <?php endwhile; wp_pagenavi(); endif; wp_reset_query(); ?>
Обычная пагинация срабатывает при размещении на страницах архивов или на Главной странице, но как вывести пагинацию на страницах page.
Вариант 1:
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $args = array( 'paged' => $paged ,'post_type' => 'review', 'posts_per_page' => '10' ); $wp_query = new WP_Query( $args ); while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?> <?php the_content(); ?> <?php endwhile; wp_pagenavi(); wp_reset_postdata(); ?>
Вариант 2 (Более предпочтителен, если на страницах есть вывод других циклов):
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $args = array( 'paged' => $paged ,'post_type' => 'review', 'posts_per_page' => '10' ); $loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); ?> <?php the_content(); ?> <?php endwhile; wp_pagenavi( array( 'query' => $loop ) ); wp_reset_postdata(); ?>
Варианты кода с пагинацией предоставил Algiz.