Описание функции get_next_post()
Функция get_next_post() возвращает следующую запись в рамках текущей записи по дате публикации. Это полезно для создания навигации между записями на сайте. Функция учитывает категорию текущей записи и возвращает следующую запись в той же категории, если это возможно.
Параметры
$in_same_term
Тип: bool
Обязательный: Нет
По умолчанию: false
Описание: Определяет, следует ли ограничить выборку записями из той же категории или таксономии
Возможные значения:
0: 1
1:
$excluded_terms
Тип: mixed
Обязательный: Нет
По умолчанию: null
Описание: ID или массив ID категорий, которые следует исключить из выборки
Возможные значения:
$taxonomy
Тип: string
Обязательный: Нет
По умолчанию: category
Описание: Таксономия, которую следует использовать для фильтрации записей
Возможные значения:
0: category
1: post_tag
2: custom_taxonomy
Возвращаемое значение
Тип: object|false
Описание: Объект WP_Post следующей записи или false, если следующая запись не найдена
Возможные значения:
• Объект WP_Post при наличии следующей записи
• false, если следующая запись не найдена
Примеры использования
Базовый пример получения следующей записи
$next_post = get_next_post();
if ($next_post) {
echo $next_post->post_title;
}
Выводит заголовок следующей записи, если она существует
Получение следующей записи, которая находится в той же категории
$next_post = get_next_post(true);
if ($next_post) {
echo $next_post->post_title;
}
Использует аргумент in_same_term для ограничения выборки
Получение следующей записи, исключая запись с ID 1
$next_post = get_next_post(false, 1);
if ($next_post) {
echo $next_post->post_title;
}
Исключает запись с указанным ID
Пример использования в цикле темы
while (have_posts()) : the_post();
// Код для отображения записи
$next_post = get_next_post();
if ($next_post) {
echo ''.$next_post->post_title.'';
}
endwhile;
Выводит ссылку на следующую запись в контексте цикла
Безопасность
Валидация входных данных: Параметры проходят валидацию внутри функции
Санитизация: Параметры автоматически очищаются WordPress
Рекомендации: При выводе данных используйте esc_html() для заголовков записей
— Связанные функции
Получает предыдущую запись в последовательности
Получает соседнюю запись (предыдущую или следующую)
— Хуки
Фильтрует SQL-запрос для получения следующей записи
Фильтрует условия SQL-запроса для получения следующей записи
— Примечания
– Ограничения
Функция работает только для публичных записей
– Частые проблемы
- Возвращает false, если нет следующей записи
- Проблемы с фильтрацией по категориям, если текущее состояние не соответствует