get_the_posts_navigation() WP 4.1.0

Отримує посилання на наступну та попередню сторінки постів. Використовується на сторінках архівів (мітки, рубрики).

Такі посилання можна отримати за допомогою функцій get_previous_posts_link() .

Щоб отримати посилання навігації для окремого запису, використовуйте the_post_navigation() .

Щоб отримати блок із посиланнями пагінації, використовуйте функцію get_the_posts_pagination() .

Працює на основі:
get_next_posts_link() ,
_navigation_markup()
Основа для:
the_posts_navigation()

Хуків немає.

Повертає

Строку. Рядок: HTML код на попередній і наступний мережі постів.

Використання

get_the_posts_navigation ($ args);
$args
(масив)

За допомогою параметрів, що передаються в масив prev_text і next_text , можна змінити текст посилань. За замовчуванням використовуються «Старі записи» та «Нові записи»:

$ args = array (
	'prev_text' => __( 'Older posts' ),
	'next_text' => __( 'Newer posts' ),
	'screen_reader_text' => __( 'Posts navigation' ),
	'aria_label' => __( 'Posts' ), ​​// WP 5.3
	'class' => 'posts-navigation', // WP 5.5
);

За замовчуванням: array()

Приклади

0

#1 Виведемо посилання на попередній/наступний сет постів

the_posts_navigation( array(
	'prev_text' => 'Попередні записи',
	'next_text' => 'Наступні записи',
	'screen_reader_text' => 'Навігація',
)));

Цей код виведе:

<nav class="navigation posts-navigation" role="navigation">
	<h2 class="screen-reader-text">Навігація</h2>
	<div class="nav-links">
		<div class="nav-previous">
			<a href="http://example.com/page/3/">Попередні записи</a>
		</div>
		<div class="nav-next">
			<a href="http://example.com/">Наступні записи</a>
		</div>
	</div>
</nav>

нотатки

  • Global. WP_Query. $wp_query WordPress Query object.

список змін

З версії 4.1.0Введено.
З версії 5.3.0Added aria_label parameter.
З версії 5.5.0Added the class parameter.

Код get_the_posts_navigation() WP 6.0.2

function get_the_posts_navigation( $args = array() ) {
	$navigation = '';

	// Не print empty markup if there's only one page.
	if ( $GLOBALS['wp_query']->max_num_pages > 1 ) {
		// Make sure the nav element has aria-label attribute: fallback to the screen reader text.
		if ( ! empty( $args['screen_reader_text'] ) && empty( $args['aria_label'] ) ) {
			$args['aria_label'] = $args['screen_reader_text'];
		}

		$args = wp_parse_args(
			$args,
			array(
				'prev_text' => __( 'Older posts' ),
				'next_text' => __( 'Newer posts' ),
				'screen_reader_text' => __( 'Posts navigation' ),
				'aria_label' => __( 'Posts' ),
				'class' => 'posts-navigation',
			)
		);

		$next_link = get_previous_posts_link( $args['next_text'] );
		$prev_link = get_next_posts_link( $args['prev_text'] );

		if ( $prev_link ) {
			$navigation .= '<div class="nav-previous">' . $prev_link. '</div>';
		}

		if ( $next_link ) {
			$navigation .= '<div class="nav-next">' . $next_link. '</div>';
		}

		$navigation = _navigation_markup( $navigation, $args['class'], $args['screen_reader_text'], $args['aria_label'] );
	}

	return $navigation;
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *