get_adjacent_post() — возвращает объект предыдущего или следующего поста

Функция возвращает объект поста WP_Post (предыдущего или следующего — зависит от указанных параметров), подробное описание самого объекта здесь.

get_adjacent_post( $in_same_cat = false, $excluded_categories = '', $previous = true )
$in_same_cat
(логическое) должен ли возвращаемый пост находиться в той же категории, что и текущий.
$excluded_categories
(строка|массив) ID рубрик через запятую или в виде массива, посты из которых возвращать не нужно. Параметр будет проигнорирован, если $in_same_cat = true.
$previous
(логическое) если true — возвращается предыдущий пост, если false, то следующий.

Если параметр $in_same_cat = false, то функция работает также и для типов записей page (страницы).

Если пост помечен как «Личное», то он будет проигнорирован.

Примеры

Выводим ссылку на предыдущий пост:

$previous_post = get_adjacent_post();
echo '<a href="' . get_permalink( $previous_post ) . '">' . $previous_post->post_title . '</a>';

Ссылка на следующий пост, который находится в той же категории, что и текущий:

$next_post = get_adjacent_post( true, '', false);
echo '<a href="' . get_permalink( $next_post ) . '">' . $next_post->post_title . '</a>';

Миша

Впервые познакомился с WordPress в 2009 году. С 2014 года меня можно встретить на WordCamp по всему миру — официальной конфе по WordPress, иногда там выступаю, но с 2019 выступаю только на тех, которые сам организовываю. Также периодически школа Epic Skills и LoftSchool приглашают меня вести у них уроки/вебинары.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля — пишите мне.

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

Если вы хотите добавить код, не забудьте обернуть его в <pre lang="php"></pre>, в случае несоблюдения этого условия в 99% случаях ваш коммент будет удалён, а автор заблокирован. Печалька.