WordPress paginate_links — как его использовать?

Я хочу добавить нумерацию страниц на страницу с дочерними страницами. Вот такую ​​нумерацию страниц, которую я хотел бы создать (из начальной загрузки):

<nav>
<ul class="pagination">
<li>
<a href="#" aria-label="Previous">
<span aria-hidden="true">&laquo;</span>
</a>
</li>
<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li>
<a href="#" aria-label="Next">
<span aria-hidden="true">&raquo;</span>
</a>
</li>
</ul>
</nav>

И это мой код:

<!-- block -->
<div class="row grid events-block">

<?php
$parent = $post->ID;
// query_posts('posts_per_page=15&post_type=page&post_parent='.$parent);
query_posts(array('posts_per_page'=>'1', 'post_type' => 'page', 'post_parent' => $parent, 'paged' => get_query_var('paged')));
while (have_posts()) : the_post();
?>

<!-- item -->
<div class="grid-item col-md-6 col-sm-6 col-xs-12 event-item">

<div class="date-box">
<?php echo $event_dates; ?>
</div>

<div class="event-item-text-box">
<div class="event-item-text-inner-box">
<h3 class="heading-item"><a href="#" target="_blank"><?php the_title(); ?></a></h3>
<p><?php the_excerpt(); ?></p>
</div>
</div>

</div>
<!-- item -->
<?php endwhile; ?>

<?php
// Reset the post to the original after loop. otherwise the current page becomes the last item from the while loop.
// https://codex.wordpress.org/Function_Reference/wp_reset_query
wp_reset_query();
?>

</div>
<!-- block -->

<?php $args = array(
'base'               => '%_%',
'format'             => '?paged=%#%',
'total'              => 1,
'current'            => 0,
'show_all'           => false,
'end_size'           => 1,
'mid_size'           => 2,
'prev_next'          => true,
'prev_text'          => __('« Previous'),
'next_text'          => __('Next »'),
'type'               => 'plain',
'add_args'           => false,
'add_fragment'       => '',
'before_page_number' => '',
'after_page_number'  => ''
); ?>

<?php echo paginate_links( $args ); ?>

Но я не могу заставить его работать. Есть идеи, что я пропустил?

2

Решение

Нумерация страниц Нравится: Предыдущая 1 2 3 Следующая

<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

$data= new WP_Query(array(
'post_type'=>'YOUR_POST_TYPE', // your post type name
'posts_per_page' => 3, // post per page
'paged' => $paged,
));

if($data->have_posts()) :
while($data->have_posts())  : $data->the_post();
// Your code
endwhile;

$total_pages = $data->max_num_pages;

if ($total_pages > 1){

$current_page = max(1, get_query_var('paged'));

echo paginate_links(array(
'base' => get_pagenum_link(1) . '%_%',
'format' => '/page/%#%',
'current' => $current_page,
'total' => $total_pages,
'prev_text'    => __('« prev'),
'next_text'    => __('next »'),
));
}
?>
<?php else :?>
<h3><?php _e('404 Error&#58; Not Found', ''); ?></h3>
<?php endif; ?>
<?php wp_reset_postdata();?>

Не могли бы вы попробовать приведенный выше код? Я думаю, что это полезно для вас.

7

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]