the_post_navigation()

Отображает навигацию к следующей/предыдущей записи, при применении
Функция WordPress
INT 4.1.0
WordPress Icon

Описание функции

Функция the_post_navigation() отображает навигацию к предыдущей/следующей записи, если это применимо.

Функция выводит ссылки на предыдущую и следующую записи в блоке навигации. Навигация отображается в зависимости от текущей записи и настроек.

Функция использует функцию get_the_post_navigation() для получения данных навигации и выводит их в виде HTML-кода.

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

the_post_navigation( array $args = array() )

Функция the_post_navigation() принимает один необязательный параметр — массив $args, который содержит настройки для отображения навигации.

  • $args (массив) — Необязательный. См. функцию get_the_post_navigation() для доступных аргументов. Более подробные аргументы из get_the_post_navigation(... $args). По умолчанию пустой массив.
  • prev_text (строка) — Текст ссылки на предыдущую запись. По умолчанию «%title».
  • next_text (строка) — Текст ссылки на следующую запись. По умолчанию «%title».
  • in_same_term (логическое) — Определяет, должна ли ссылка быть в той же таксономии. По умолчанию false.
  • excluded_terms (массив или строка) — Массив или список исключенных ID терминов. По умолчанию пустой массив.
  • taxonomy (строка) — Таксономия, если in_same_term установлено в true. По умолчанию «category».
  • screen_reader_text (строка) — Текст для экранных читалок элемента навигации. По умолчанию «Post navigation».
  • aria_label (строка) — Текст для атрибута ARIA label элемента навигации. По умолчанию «Posts».
  • class (строка) — Пользовательский класс для элемента навигации. По умолчанию «post-navigation».
<?php
  $args = array(
    'prev_text'          => 'Предыдущая запись: %title',
    'next_text'          => 'Следующая запись: %title',
    'in_same_term'       => true,
    'excluded_terms'     => array(1, 2, 3),
    'taxonomy'           => 'category',
    'screen_reader_text' => 'Навигация по записям',
    'aria_label'         => 'Записи',
    'class'              => 'custom-post-navigation',
  );
  the_post_navigation( $args );
?>

В приведенном выше примере кода используется функция the_post_navigation() для вывода навигации к предыдущей и следующей записям. В массиве $args заданы настройки для отображения навигации.

Параметр prev_text устанавливает текст ссылки на предыдущую запись, где %title будет заменено на заголовок предыдущей записи.

Параметр next_text устанавливает текст ссылки на следующую запись, где %title будет заменено на заголовок следующей записи.

Параметр in_same_term установлен в true, что означает, что ссылка будет в той же таксономии, что и текущая запись.

Параметр excluded_terms задает массив исключенных ID терминов, которые не будут учитываться при построении навигации.

Параметр taxonomy устанавливает таксономию, в которой будет производиться поиск записей для навигации. В данном случае используется таксономия «category».

Параметр screen_reader_text задает текст для экранных читалок элемента навигации.

Параметр aria_label устанавливает текст для атрибута ARIA label элемента навигации.

Параметр class задает пользовательский класс для элемента навигации.

Примеры использования

Отображение навигации к предыдущей и следующей записи


the_post_navigation();

Этот пример кода отображает навигацию к предыдущей и следующей записи. Функция the_post_navigation() используется без аргументов, поэтому она использует значения по умолчанию.

Настройка текста ссылок на предыдущую и следующую запись


the_post_navigation( array(
    'prev_text' => 'Предыдущая запись: %title',
    'next_text' => 'Следующая запись: %title',
) );

В этом примере кода мы настраиваем текст ссылок на предыдущую и следующую запись. Вместо значения по умолчанию, мы указываем свои тексты, используя шаблонные теги %title, которые будут заменены на заголовки соответствующих записей.

Определение ссылок в рамках одной таксономии


the_post_navigation( array(
    'in_same_term' => true,
    'taxonomy' => 'category',
) );

В этом примере кода мы определяем, что ссылки на предыдущую и следующую запись должны быть в рамках одной таксономии. Мы также указываем, что таксономия должна быть «category».

Исключение определенных терминов из навигации


the_post_navigation( array(
    'excluded_terms' => array( 1, 2, 3 ),
) );

В этом примере кода мы исключаем определенные термины из навигации. Мы указываем массив идентификаторов терминов, которые должны быть исключены.

Изменение таксономии по умолчанию


the_post_navigation( array(
    'taxonomy' => 'custom_taxonomy',
) );

В этом примере кода мы изменяем таксономию по умолчанию для ссылок на предыдущую и следующую запись. Мы указываем, что таксономия должна быть «custom_taxonomy».

Настройка текста для экранных читалок


the_post_navigation( array(
    'screen_reader_text' => 'Навигация по записям',
) );

В этом примере кода мы настраиваем текст для экранных читалок. Мы указываем, что текст должен быть «Навигация по записям».

Изменение ARIA-метки для навигации


the_post_navigation( array(
    'aria_label' => 'Навигация по записям',
) );

В этом примере кода мы изменяем ARIA-метку для навигации. Мы указываем, что метка должна быть «Навигация по записям».

Вопросы и ответы

Как изменить текст ссылки на предыдущий пост?

Для изменения текста ссылки на предыдущий пост в функции the_post_navigation() необходимо использовать параметр prev_text. По умолчанию текст ссылки задан как ‘%title’. Чтобы изменить текст, нужно передать новое значение в этот параметр.


$args = array(
    'prev_text' => 'Предыдущий пост: %title',
);
the_post_navigation($args);

Как изменить текст ссылки на следующий пост?

Для изменения текста ссылки на следующий пост в функции the_post_navigation() необходимо использовать параметр next_text. По умолчанию текст ссылки задан как ‘%title’. Чтобы изменить текст, нужно передать новое значение в этот параметр.


$args = array(
    'next_text' => 'Следующий пост: %title',
);
the_post_navigation($args);

Как изменить текст для навигации постов в одной таксономии?

Для изменения текста для навигации постов в одной таксономии в функции the_post_navigation() необходимо использовать параметр in_same_term. По умолчанию значение этого параметра равно false. Чтобы изменить текст, нужно передать новое значение в этот параметр.


$args = array(
    'in_same_term' => true,
);
the_post_navigation($args);

Как исключить определенные термины из навигации постов?

Для исключения определенных терминов из навигации постов в функции the_post_navigation() необходимо использовать параметр excluded_terms. По умолчанию значение этого параметра равно array(). Чтобы исключить определенные термины, нужно передать массив или строку с идентификаторами терминов в этот параметр.


$args = array(
    'excluded_terms' => array(1, 2, 3),
);
the_post_navigation($args);

Как изменить таксономию, используемую для навигации постов?

Для изменения таксономии, используемой для навигации постов, можно использовать параметр taxonomy при вызове функции the_post_navigation(). По умолчанию, значение этого параметра равно ‘category’.

Пример кода:


$args = array(
    'taxonomy' => 'custom_taxonomy'
);
the_post_navigation($args);

Как изменить текст для экранных читалок в навигации постов?

Для изменения текста, который будет использоваться для экранных читалок в навигации постов, можно использовать параметр screen_reader_text при вызове функции the_post_navigation(). По умолчанию, значение этого параметра равно ‘Post navigation’.

Пример кода:


$args = array(
    'screen_reader_text' => 'Custom navigation text'
);
the_post_navigation($args);

Как изменить ARIA-метку для навигации постов?

Для изменения ARIA-метки, которая будет использоваться для навигации постов, можно использовать параметр aria_label при вызове функции the_post_navigation(). По умолчанию, значение этого параметра равно ‘Posts’.

Пример кода:


$args = array(
    'aria_label' => 'Custom ARIA label'
);
the_post_navigation($args);

Как изменить класс для элемента навигации постов?

Для изменения класса, который будет применяться к элементу навигации постов, можно использовать параметр class при вызове функции the_post_navigation(). По умолчанию, значение этого параметра равно ‘post-navigation’.

Пример кода:


$args = array(
    'class' => 'custom-navigation-class'
);
the_post_navigation($args);

Функция the_post_navigation() в WordPress позволяет отображать навигацию к предыдущему/следующему посту, если это применимо. С помощью различных параметров можно настроить таксономию, текст для экранных читалок, ARIA-метку и класс элемента навигации постов.

Связанные элементы

  • Функция get_the_post_navigation(): Возвращает HTML-код навигации к предыдущему/следующему посту.
  • Класс Walker_Page: Класс, используемый для создания HTML-кода навигации по страницам.
  • Класс Walker_Category: Класс, используемый для создания HTML-кода навигации по категориям.
Обсуждение