Здравствуйте!
Я использую такую пагинацию (нашел в одном из сайтов):
functions.php
// постраничная навигация
function wp_corenavi() {
global $wp_query;
$pages = '';
$max = $wp_query->max_num_pages;
if (!$current = get_query_var('paged')) $current = 1;
$a['base'] = str_replace(999999999, '%#%', get_pagenum_link(999999999));
$a['total'] = $max;
$a['current'] = $current;
$total = 1; //1 - выводить текст "Страница N из N", 0 - не выводить
$a['mid_size'] = 3; //сколько ссылок показывать слева и справа от текущей
$a['end_size'] = 1; //сколько ссылок показывать в начале и в конце
$a['prev_text'] = '«'; //текст ссылки "Предыдущая страница"
$a['next_text'] = '»'; //текст ссылки "Следующая страница"
if ($max > 1) echo '<div class="navigation">';
if ($total == 1 && $max > 1) $pages = '<span class="pages">Страница ' . $current . ' из ' . $max . '</span>'."\r\n";
echo $pages . paginate_links($a);
if ($max > 1) echo '</div>';
}
Вывод пагинации в шаблоне
<?php if (function_exists('wp_corenavi')) wp_corenavi(); ?>
CSS
/* постраничная навигация */
.navigation {
text-align: center;
margin: 5px auto;
clear: both;
display: block;
width: 100%;
}
.navigation span {
display: inline-block;
background: #2C3E50;
padding: 5px 10px;
color: #fff;
}
.navigation a {
display: inline-block;
background: #2C3E50;
padding: 5px 10px;
color: #fff;
}
.navigation a:hover {
color:#fff;
text-decoration:none;
background: #00635a;
}
А для поисковиков задаю каноникал (Yoast SEO) вместо nofollow etc.
Пример, пагинации -
https://md7.info/fakty