Я создал страницу новостей, как обычную страницу с помощью шаблона
/* Template Name: Шаблон новости */
На ней я вывожу все посты с определённой рубрики, и мне нужно на этой странице сделать пагинацию. Я попробовал вставить стандартную функцию the_posts_pagination(), но ничего не произошло. В настройках указал показывать 3 новости, и создал их 4, то есть 4-ю новость оно скрыло, но пагинацию выводить не хочет. Подскажите, как её вывести.
Нашел решение на wp-kama
<?php
// 1 значение по умолчанию
$paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
$the_query = new WP_Query( array(
'posts_per_page' => 5,
'category_name' => 'gallery',
'paged' => $paged,
) );
// цикл вывода полученных записей
while( $the_query->have_posts() ){
$the_query->the_post();
?>
<!-- HTML каждой записи -->
<?php
}
wp_reset_postdata();
// пагинация для произвольного запроса
$big = 999999999; // уникальное число
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) )
),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $the_query->max_num_pages
) );
?>
Сборка персонального компьютера от Artline: умный выбор для современных пользователей