next_posts_link() – выводит ссылку пагинации на следующие записи

Функция выводит ссылку на страницу со следующими, то есть опубликованными ранее, постами.

Работает только внутри цикла WordPress, смотрите мой видеоурок по циклам.

  • Если находимся на последней странице (с самыми старыми постами), то ничего не выводит.
  • Если вам нужно получить ссылку и записать в переменную PHP, то воспользуйтесь get_next_posts_link().
  • Обычно выводит ссылку на более старые посты, потому что по умолчанию они сортируются в обратном хронологическом порядке.
  • Если вам нужно вывести пагинацию с номерами страниц, обратите внимание на paginate_links().
  • Не будет работать (без ошибок), если в php.ini включен mysql.trace_mode. Если у вас нет доступа к файлу php.ini, то попробуйте в functions.php добавить строку ini_set( 'mysql.trace_mode', 0 );
next_posts_link( $label = null, $max_page = 0 )
$label
(строка) Текст ссылки. По умолчанию Next Page » (Следующая страница →).
$max_page
(целое) Максимальное количество страниц в пагинации. По умолчанию используется значение максимального количества страниц из основного цикла $wp_query->max_num_pages. Если вы создаёте кастомную пагинацию для своих целей, то этот параметр нужно указать.

Функция ничего не возвращает.

Пример

next_posts_link( 'Туда →' );

Кастомная пагинация для цикла на WP_Query

Подробнее про создание циклов при помощи WP_Query в моём видеоуроке.

// определяем текущую страницу, на которой находимся
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
 
// запускаем дополнительный цикл
$q = new WP_Query( array(
	'cat'   => 5,
	'paged' => $paged
);
 
if ( $q->have_posts() ) :
	// выводим заголовки постов
	while ( $q->have_posts() ) : $q->the_post();
		the_title( '<h2>', '</h2>' );
 
	endwhile;
 
	// в функцию next_posts_link() обязательно передаём max_num_pages.
	next_posts_link( 'Туда &rarr;', $q->max_num_pages );
	previous_posts_link( '&larr; Сюда' );
 
	wp_reset_postdata(); 
 
endif;

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Если вам нужна помощь с сайтом или разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда будем рады вам помочь!

Оставить комментарий

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, если же код – меньше одной строчки, то можно и в <code></code>.