Привет, сегодня рассмотрим для многих важную тему. А имеено как сделать WordPress постраничная навигация с цифрами без плагина.

Всем известно, что в WordPress по умолчанию выводиться постраничная навигация в виде «Предыдущий» и «Следующий», без указания ссылок на все страницы постраничной навигации. Это не очень хорошо ни с точки зрения SEO ни с точки зрения пользователей.

Сегодня мы научимся делать WordPress постраничная навигация с цифрами и ссылками на все страницы без плагинов.

Как сделать WordPress постраничная навигация

Проще всего это сделать при помощи нативной функции paginate_links:

<?php echo paginate_links( $args ) ?>

Эта функция генерирует HTML код, который выводит ссылки на страницы блога, с цифрами. Как видите, в эту функцию передаётся параметр $args. Стандартые аргументы этой функции (массив $args) выглядит вот так:

    $args = array(
    'base' => '%_%',
    'format' => '?page=%#%',
    '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' => ''
); 

Очевидно, что можно их поменять, и передать в функцию измененные значения аргументов, например можно поменять заголовки для ссылок «предыдущий» и «следующий», или вообще выключить их всех.

Так, при помощи этой функции, мы сможем вывести в wordpress страницы постраничной навигации. Соберем все вместе и посмотрим что же нужно вставить в шаблон, чтобы вывелись эти ссылки на страницы постраничной навигации:


    str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 'format' => '?page=%#%', 'total' => $wp_query->max_num_pages, 'current' => max( 1, get_query_var( 'paged') ), 'show_all' => false, 'end_size' => 3, 'mid_size' => 2, 'prev_next' => True, 'prev_text' => __('« Назад'), 'next_text' => __('Вперед »'), 'type' => 'list', ); echo paginate_links($args); ?>

Все, в результате мы получим постраничную навигацию такого вида:
wordpress постраничная навигация