Предположим, у нас есть 15 страниц с записями. Мы находимся на 8-й странице. Данная функция вернет ссылку на 9-ю страницу. Если же нам нужно попасть на 7-ю страницу, тогда используем get_previous_posts_link().
get_next_posts_link( $label = null, $max_page = 0 )
Параметры
- $label
- (строка) Текст ссылки. По умолчанию
Next Page »
(Следующая страница →
). - $max_page
- (целое число) Максимальное количество отображаемых страниц. Предположим, всего у вас 15 страниц с постами, если в качестве значения данного параметра вы установите 11, то при помощи ссылки «следующая страница» вы сможете дойти только до 11-й страницы, потом ссылка исчезнет. Но на самом деле задача параметра немного в другом – не в том, чтобы ограничивать количество ссылок для вывода, а в том, чтобы не выводить ссылки на страницы, на которых уже нет постов. В качестве значения по умолчанию используется
$wp_query->max_num_pages
.
Функция возвращает HTML ссылки на следующую страницу с записями.
Пример
echo get_next_posts_link( 'Туда →' );
Пример произвольной пагинации для цикла на WP_Query
Подробнее про создание циклов при помощи WP_Query в моём видеоуроке.
// определяем текущую страницу, на которой находимся $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1; // запускаем дополнительный цикл $q = new WP_Query( "cat=5&paged=$paged" ); if ( $q->have_posts() ) : // выводим заголовки постов while ( $q->have_posts() ) : $q->the_post(); the_title( '<h2>', '</h2>' ); endwhile; // в функцию get_next_posts_link() обязательно передаём max_num_pages. echo get_next_posts_link( 'Туда →', $q->max_num_pages ); echo get_previous_posts_link( '← Сюда' ); wp_reset_postdata(); endif;
next_posts_link_attributes
Фильтр-хук next_posts_link_attributes
позволяет добавить какие-либо HTML-атрибуты на ссылку. Например давайте попробуем добавить target="_blank"
и rel="nofollow"
.
add_filter( 'next_posts_link_attributes', 'true_add_next_link_attrs' ); function true_add_next_link_attrs( $attr ) { $attr = 'target="blank" rel="nofollow"'; return $attr; }
Не знаете, куда вставлять код?