Функция GET_NEXT_POSTS_LINK() │ WP 2.7.0
Функция get_next_posts_link() позволяет получить ссылку на следующую страницу с записями.
Как это работает
- Функция использует другие функции WordPress: 
next_posts()иget_next_posts_page_link(). - Её можно применять вместе с функциями навигации, такими как 
next_posts_link()иget_posts_nav_link(). 
Упрощённое объяснение
Хуки функции
next_posts_link_attributes— позволяет изменять атрибуты ссылки на следующую страницу записей.
Возвращаемое значение
- Функция возвращает строку, содержащую HTML-код ссылки на следующую страницу записей или 
null, если такой нет. 
Использование
Функция применяется следующим образом:
get_next_posts_link( $label, $max_page );
$label(строка) — текст для ссылки. По умолчаниюnull.$max_page(целое число) — максимальное количество страниц.
Примеры использования
Пример 1: Базовое использование
Пример 2: Кастомный текст ссылки
Пример 3: Кастомный текст и количество страниц
Пример 4: Использование с WP_Query
Добавьте параметр $max_pages, когда создаете цикл с помощью WP_Query. Чтобы получить количество всех страниц, используйте свойство max_num_pages объекта WP_Query:
have_posts() ){
    // Цикл
    while ( $the_query->have_posts() ){
        $the_query->the_post(); // Устанавливаем глобальную переменную $post
        the_title(); // Выводим заголовок
    }
    // Получаем ссылку на следующую страницу с лимитом
    echo get_next_posts_link( 'Ранние записи', $the_query->max_num_pages );
    echo get_previous_posts_link( 'Новые записи' );
    // Очищаем глобальные переменные
    wp_reset_postdata();
} else {
    echo 'Записи, соответствующие запросу, не найдены.
';
}
?>
Примечания
- Глобальные переменные:
int $paged— текущая страница.WP_Query $wp_query— объект запроса WordPress.
 
Изменения
- С версии 2.7.0 — добавлена функция.
 
Код функции
Ниже приведен код функции get_next_posts_link из файла wp-includes/link-template.php.
function get_next_posts_link( $label = null, $max_page = 0 ) {
    global $paged, $wp_query;
    if ( ! $max_page ) {
        $max_page = $wp_query->max_num_pages;
    }
    if ( ! $paged ) {
        $paged = 1;
    }
    $next_page = (int) $paged + 1;
    if ( null === $label ) {
        $label = __( 'Следующая страница »' );
    }
    if ( ! is_single() && ( $next_page <= $max_page ) ) {
        $attr = apply_filters( 'next_posts_link_attributes', '' );
        return sprintf(
            '%3$s',
            next_posts( $max_page, false ),
            $attr,
            preg_replace( '/&([^#])(?![a-z]{1,8};)/i', '&$1', $label )
        );
    }
}
Теперь вы знаете, как использовать функцию get_next_posts_link() для навигации между записями на вашем сайте WordPress.