get_the_posts_pagination() WordPress Function

The get_the_posts_pagination() function is used to create a paginated link for posts. This function is used when you want to break your content up into multiple pages. It accepts a number of parameters that can be used to customize the pagination links.

get_the_posts_pagination( array $args = array() ) #

Retrieves a paginated navigation to next/previous set of posts, when applicable.


Parameters

$args

(array)(Optional)Default pagination arguments, see paginate_links().

  • 'screen_reader_text'
    (string) Screen reader text for navigation element. Default 'Posts navigation'.
  • 'aria_label'
    (string) ARIA label text for the nav element. Default 'Posts'.
  • 'class'
    (string) Custom class for the nav element. Default 'pagination'.

Default value: array()


Top ↑

Return

(string) Markup for pagination links.


Top ↑

Source

File: wp-includes/link-template.php

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

	// Don't print empty markup if there's only one page.
	if ( $GLOBALS['wp_query']->max_num_pages > 1 ) {
		// Make sure the nav element has an 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(
				'mid_size'           => 1,
				'prev_text'          => _x( 'Previous', 'previous set of posts' ),
				'next_text'          => _x( 'Next', 'next set of posts' ),
				'screen_reader_text' => __( 'Posts navigation' ),
				'aria_label'         => __( 'Posts' ),
				'class'              => 'pagination',
			)
		);

		// Make sure we get a string back. Plain is the next best thing.
		if ( isset( $args['type'] ) && 'array' === $args['type'] ) {
			$args['type'] = 'plain';
		}

		// Set up paginated links.
		$links = paginate_links( $args );

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

	return $navigation;
}


Top ↑

Changelog

Changelog
VersionDescription
5.5.0Added the class parameter.
5.3.0Added the aria_label parameter.
4.1.0Introduced.

The content displayed on this page has been created in part by processing WordPress source code files which are made available under the GPLv2 (or a later version) license by theĀ Free Software Foundation. In addition to this, the content includes user-written examples and information. All material is subject to review and curation by the WPPaste.com community.

Show More
Show More