WordPress как на ладони

get_next_post_link()WP 3.7.0

Получает ссылку (тег A) на следующий по дате пост относительно текущего из указанной таксономии (по умолчанию category).

Работает со всеми типами записей (с типом записи текущего поста - global $post).

Используйте get_previous_post_link(), чтобы получить ссылку на предыдущий пост.

Работает на основе: get_adjacent_post_link()
Основа для: next_post_link()
1 раз — 0.005546 сек (очень медленно) | 50000 раз — 16.68 сек (медленно) | PHP 7.1.5, WP 4.8.1

Хуков нет.

Возвращает

Строку.

  • HTML код ссылки:

    <a rel="next" href="/ярлык_записи">Заголовок записи</a>
  • Пустую строку, если подходящей записи нет.

Использование

get_next_post_link( $format, $link, $in_same_term, $excluded_terms, $taxonomy );
$format(строка)
Формат в котором будет показана ссылка. %link заменится HTML код <a>. Например, '%link →' выведет <a ...> →.
По умолчанию: '%link »'
$link(строка)
Анкор ссылки. '%title' заменится на заголовок записи.
По умолчанию: '%title'
$in_same_term(логический)
true - получить следующий пост из текущей рубрики. Если запись находится в произвольной таксономии, то нужно указать параметр taxonomy.
По умолчанию: false
$excluded_terms(массив/строка)
Исключить рубрики (термины). Можно указать строкой или массивом: '1,5,15' или array(1,5,15).
По умолчанию: ''
$taxonomy(строка)
Название таксономии для параметра $in_same_term.
По умолчанию: 'category'

Примеры

0

#1 Ссылка на следующую запись относительно текущей

# ссылка на следующую запись
echo get_next_post_link();

# выведет: <a href="http://example.com/some" rel="next">Что-то</a> →        

# ссылка на следующую запись из текущей рубрики
echo get_next_post_link( '%link', '%title →', 1 );

# выведет: <a href="http://example.com/some" rel="next">Что-то →</a>

# ссылка на следующую запись из текущего элемента таксономии (my_tax)
echo get_next_post_link( '%link', '%title →', 1, '', 'my_tax' );
0

#2 Добавим свой класс к ссылкам

Когда к следующей/предыдущей ссылке нужно добавить произвольный класс, можно воспользоваться таким хаком:

$next = get_next_post_link( '%link', 'next post', true ); 
echo str_replace( '<a ', '<a class="myclass" ', $next );

$prev = get_previous_post_link( '%link', 'prev post', true );
echo str_replace( '<a ', '<a class="myclass" ', $prev );

Список изменений

С версии 3.7.0 Введена.

Код get_next_post_link() WP 6.5.2

function get_next_post_link( $format = '%link &raquo;', $link = '%title', $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' ) {
	return get_adjacent_post_link( $format, $link, $in_same_term, $excluded_terms, false, $taxonomy );
}
5 комментариев
    Войти