Получение ссылки на предыдущий пост в WordPress
Функция get_previous_post_link()
позволяет получить ссылку (тег A) на предыдущий пост в блоге (по дате) относительно текущего поста. Эта функция используется на страницах типа is_single()
.
Если вам нужна ссылка на следующий пост, используйте функцию get_next_post_link()
.
Важные сведения
- Использует:
get_adjacent_post_link()
- Используется в:
previous_post_link()
- Время выполнения:
- 1 раз — 0.005912 сек (очень медленно)
- 50000 раз — 16.36 сек (медленно)
- PHP 7.1.5, WP 4.8.1
Нет хуков.
Возвращаемое значение
Функция возвращает строку:
-
HTML для ссылки:
Название поста
-
Пустая строка, если подходящего поста нет.
Как использовать
Синтаксис функции выглядит так:
get_previous_post_link( $format, $link, $in_same_term, $excluded_terms, $taxonomy );
-
$format (строка): Формат ссылки.
%link
будет заменен на HTML-посылку<a>
. Например,'← %link'
отобразит← <a ...>
.- По умолчанию:
'« %link'
- По умолчанию:
-
$link (строка): Формат текста ссылки.
%title
будет заменен на заголовок поста.- По умолчанию:
'%title'
- По умолчанию:
-
$in_same_term (true/false): Указывает, должна ли ссылка быть в том же термине таксономии.
true
— получить предыдущий пост из текущей категории. Если пост находится в пользовательской таксономии, нужно указать параметр$taxonomy
.- По умолчанию:
false
- По умолчанию:
-
$excluded_terms (массив/строка): Массив или строка с исключенными идентификаторами терминов. Можно указать строку или массив:
'1,5,15'
илиarray(1,5,15)
.- По умолчанию:
''
- По умолчанию:
-
$taxonomy (строка): Название таксономии для параметра
$in_same_term
.- По умолчанию:
'category'
- По умолчанию:
Примеры использования
Вот примеры того, как можно использовать эту функцию различными способами:
1. Ссылка на предыдущий пост
echo get_previous_post_link();
Вывод:
← <a href="http://test.ru/zagolovok" rel="prev">Название поста</a>
2. Ссылка на предыдущий пост из текущей категории
echo get_previous_post_link( '%link', '← %title', 1 );
Вывод:
<a href="http://test.ru/markup" rel="prev">← Markup</a>
3. Ссылка на предыдущий пост из пользовательской таксономии
echo get_previous_post_link( '%link', '%title →', 1, '', 'my_tax' );
4. Ссылка на предыдущий пост, исключая посты из категорий 5 и 10
echo get_previous_post_link( '%link', '%title →', 0, '5,10' );
Изменения
- С версии 3.7.0 - Функция была добавлена.
Код функции
Вот код функции get_previous_post_link()
из файла wp-includes/link-template.php
:
function get_previous_post_link( $format = '« %link', $link = '%title', $in_same_term = false, $excluded_terms = '', $taxonomy = 'category' ) {
return get_adjacent_post_link( $format, $link, $in_same_term, $excluded_terms, true, $taxonomy );
}
Связанные функции
-
Соседние ссылки:
get_adjacent_post_link()
get_next_post_link()
get_the_post_navigation()
next_post_link()
previous_post_link()
the_post_navigation()
-
Навигация:
get_adjacent_post()
get_boundary_post()
get_next_post()
get_previous_post()
Эта статья поможет вам лучше понять, как использовать функцию get_previous_post_link()
в WordPress и организовать навигацию между постами на вашем сайте.