get_the_post_navigation()
Отримує посилання (HTML) на наступний та попередній записи. Використовується на сторінці окремого запису: is_singular() .
Добре підійде для навігації між вкладеннями (прикріпленими картинками).
До версії 4.1. для виведення посилань на попередній і наступний пост, потрібно було використовувати функції previous_post_link() . Ця функція – обгортка для цих функцій.
Щоб одразу вивести результат на екран, використовуйте the_post_navigation()
the_post_navigation()
Хуків немає.
Повертає
Строку
.
Використання
get_the_post_navigation ($ args);
-
$args
(масив) Масив, який може містити наступні параметри:
prev_text (рядок)
Текст який буде показаний як анкор посилання на попередній запис.
За замовчуванням: %titlenext_text (рядок)
Текст який буде показаний як анкор посилання на наступний запис.
За замовчуванням: %titlescreen_reader_text (рядок)
Текст (заголовок) блоку навігації для.
Типово: __( ‘Post navigation’ )in_same_term (логічний) (WP 4.4)
true, коли потрібно, щоб посилання було з поточного елемента, зазначеного вtaxonomy
таксономії.
Типово: falseexcluded_terms (рядок/масив) (WP 4.4)
ID елементів таксономії, який потрібно виключити. У вигляді масиву або в рядку через кому.
За замовчуванням: ”taxonomy (рядок) (WP 4.4)
Назва таксономії, коли$in_same_term
= true.
Типово: ‘category’aria_label (рядок) (WP 5.5)
Значення атрибутуarea-label=""
< nav> елемента.
Типово: __( ‘Posts’ )- class (рядок) (WP 5.5)
Значення атрибутуclass=""
< nav> елемента.
За замовчуванням: ‘post-navigation’
Приклади
#1 Посилання навігації між постами
Виведемо посилання на наступний та попередній записи (пости) на окремій сторінці типу is_single() .
<?php / / Слід. / Перед. Піст. $post_nav = get_the_post_navigation( array( 'next_text' => '<span class="meta-nav" aria-hidden="true">Далі</span> ' . '<span class="screen-reader-text">Наступний запис</span> ' . '<span class="post-title">%title</span>', 'prev_text' => '<span class="meta-nav" aria-hidden="true">Назад</span> ' . '<span class="screen-reader-text">Попередній запис</span> ' . '<span class="post-title">%title</span>', ))); echo $post_nav; ?>
В результаті ми отримаємо такий HTML код:
<nav class="navigation post-navigation" role="navigation"> <h2 class="screen-reader-text">Навігація за записами</h2> <div class="nav-links"> <div class="nav-previous"><a href="//example.com/post8/" rel="prev"><span class="meta-nav" aria-hidden="true">Назад</ span> <span class="screen-reader-text">Попередній запис:</span> <span class="post-title">Запис з випадковим номером 81717</span></a> </div> <div class="nav-next"><a href="//example.com/post10/" rel="next"><span class="meta-nav" aria-hidden="true">Далі</ span> <span class="screen-reader-text">Наступний запис:</span> <span class="post-title">Привіт, мир!</span></a> </div> </div> </nav>
Або так це виглядає в дефолній темі twentyfifteen:
#2 Додамо title атрибут для посилань
Цей приклад показує, як додати атрибут <a title="" ...>
до кожного посилання в блоці. У значенні лежатиме заголовок поста і перед ним буде слово Смотрите:
: title="Смотрите: ЗАГОЛОВО_ЗАПИСИ"
.
add_filter( 'next_post_link', 'add_title_adjacent_post_link', 10, 4); add_filter( 'previous_post_link', 'add_title_adjacent_post_link', 10, 4); function add_title_adjacent_post_link( $output, $format, $link, $post ){ $title = esc_attr( 'Дивіться: '. $post->post_title ); return str_replace( '<a', "<a title='$title'", $output ); }
Код потрібно додати безпосередньо перед викликом get_the_post_navigation()
.
список змін
З версії 4.1.0 | Введено. |
З версії 4.4.0 | Introduced the_same_term , excluded_terms , і taxonomy arguments. |
З версії 5.3.0 | Added aria_label parameter. |
З версії 5.5.0 | Added the class parameter. |