_navigation_markup()
Оборачивает переданные ссылки навигации/пагинации в html шаблон.
Используется для стандартного вывода ссылок навигации/пагинации в функциях: the_posts_pagination() и the_posts_navigation().
В этой функции есть полезный хук navigation_markup_template, используя который можно изменить шаблон вывода блока (см. пример).
Внутренняя функция — эта функция рассчитана на использование самим ядром. Не рекомендуется использовать эту функцию в своем коде.
Хуки из функции
Возвращает
Строку
. HTML шаблон блока навигации.
Использование
_navigation_markup( $links, $class, $screen_reader_text );
- $links(строка) (обязательный)
- Ссылки навигации.
- $class(строка)
- Дополнительные классы к главному блоку
<nav>
. Классы добавятся к имеющемуся классуnavigation
.
По умолчанию: 'posts-navigation' - $screen_reader_text(строка)
- Название блока навигации при чтения с экрана (для роботов читающих код).
По умолчанию: __( 'Posts navigation' )
Примеры
#1 Получим блок навигации
Допустим мы получили ссылки навигации с помощью paginate_links() и теперь нам нужно вывести эти ссылки в стандартном формате пагинации:
// получаем ссылки пагинации $links = paginate_links( $args ); if ( $links ) { echo _navigation_markup( $links, 'pagination', 'Моя крутая навигация' ); }
#2 Изменение шаблона блока навигации/пагинации
Допустим нам нужно изменить вывод HTML в функциях: the_posts_pagination(), the_posts_navigation(), нужно удалить заголовок H2
. Для этого используем хук: 'navigation_markup_template'
:
add_filter('navigation_markup_template', 'my_navigation_template', 10, 2 ); function my_navigation_template( $template, $class ){ /* Вид базового шаблона: <nav class="navigation %1$s" role="navigation"> <h2 class="screen-reader-text">%2$s</h2> <div class="nav-links">%3$s</div> </nav> */ return ' <nav class="navigation %1$s" role="navigation"> <div class="nav-links">%3$s</div> </nav> '; }
Список изменений
С версии 4.1.0 | Введена. |
С версии 5.3.0 | Added the aria_label parameter. |