get_the_posts_pagination() – Retrieves a paginated navigation to next/previous set of posts, when applicable.

You appear to be a bot. Output may be restricted

Description

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

Usage

$string = get_the_posts_pagination( $args );

Parameters

$args
( array ) optional – { Optional. Default pagination arguments, see paginate_links().
$screen_reader_text
( string ) optional – Screen reader text for navigation element. Default 'Posts navigation'.
$aria_label
( string ) optional – ARIA label text for the nav element. Default 'Posts'.
$class
( string ) optional – Custom class for the nav element. Default 'pagination'. }

Returns

string Markup for pagination links.

Source

File name: wordpress/wp-includes/link-template.php
Lines:

1 to 55 of 55
function get_the_posts_pagination( $args = array() ) {
  global $wp_query;

  $navigation = '';

  // Don't print empty markup if there's only one page.
  if ( $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',
      )
    );

    
/**
 * Filters the arguments for posts pagination links.
 *
 * @since 6.1.0
 *
 * @param array $args {
 *     Optional. Default pagination arguments, see paginate_links().
 *
 *     @type string $screen_reader_text Screen reader text for navigation element.
 *                                      Default 'Posts navigation'.
 *     @type string $aria_label         ARIA label text for the nav element. Default 'Posts'.
 *     @type string $class              Custom class for the nav element. Default 'pagination'.
 * }
 */
    $args = apply_filters( 'the_posts_pagination_args', $args );

    // 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;
}
 

 View on GitHub View on Trac