WordPress.org

Make WordPress Core

Ticket #39447: 39447.diff

File 39447.diff, 3.9 KB (added by Howdy_McGee, 9 months ago)

Additional max_num_pages args

  • link-template.php

     
    10401040 *
    10411041 * @since 3.1.0
    10421042 *
    1043  * @param string  $link   Optional. Anchor text. If empty, default is 'Edit This'. Default empty.
    1044  * @param string  $before Optional. Display before edit link. Default empty.
    1045  * @param string  $after  Optional. Display after edit link. Default empty.
    1046  * @param WP_Term $term   Optional. Term object. If null, the queried object will be inspected. Default null.
    1047  * @param bool    $echo   Optional. Whether or not to echo the return. Default true.
     1043 * @param string $link   Optional. Anchor text. If empty, default is 'Edit This'. Default empty.
     1044 * @param string $before Optional. Display before edit link. Default empty.
     1045 * @param string $after  Optional. Display after edit link. Default empty.
     1046 * @param object $term   Optional. Term object. If null, the queried object will be inspected. Default null.
     1047 * @param bool   $echo   Optional. Whether or not to echo the return. Default true.
    10481048 * @return string|void HTML content.
    10491049 */
    10501050function edit_term_link( $link = '', $before = '', $after = '', $term = null, $echo = true ) {
     
    26372637 *     @type string $screen_reader_text Screen reader text for the nav element.
    26382638 *                                      Default 'Posts navigation'.
    26392639 *     @type string $aria_label         ARIA label text for the nav element. Default 'Posts'.
     2640 *     @type int $max_num_pages                 Optional custom WP_Query->max_num_pages.
     2641 *                                                                              Default $GLOBALS['wp_query']->max_num_pages
    26402642 * }
    26412643 * @return string Markup for posts links.
    26422644 */
    26432645function get_the_posts_navigation( $args = array() ) {
     2646       
    26442647        $navigation = '';
    2645 
     2648       
     2649        // Use global if no $max_num_pages provided
     2650        if( ! isset( $args['max_num_pages'] ) ) {
     2651                $args['max_num_pages'] = $GLOBALS['wp_query']->max_num_pages;
     2652        }
     2653       
    26462654        // Don't print empty markup if there's only one page.
    2647         if ( $GLOBALS['wp_query']->max_num_pages > 1 ) {
     2655        if ( $args['max_num_pages'] > 1 ) {
     2656               
    26482657                // Make sure the nav element has an aria-label attribute: fallback to the screen reader text.
    26492658                if ( ! empty( $args['screen_reader_text'] ) && empty( $args['aria_label'] ) ) {
    26502659                        $args['aria_label'] = $args['screen_reader_text'];
     
    26612670                );
    26622671
    26632672                $next_link = get_previous_posts_link( $args['next_text'] );
    2664                 $prev_link = get_next_posts_link( $args['prev_text'] );
     2673                $prev_link = get_next_posts_link( $args['prev_text'], $args['max_num_pages'] );
    26652674
    26662675                if ( $prev_link ) {
    26672676                        $navigation .= '<div class="nav-previous">' . $prev_link . '</div>';
     
    27012710 *     @type string $screen_reader_text Screen reader text for navigation element.
    27022711 *                                      Default 'Posts navigation'.
    27032712 *     @type string $aria_label         ARIA label text for the nav element. Default 'Posts'.
     2713 *     @type int $max_num_pages                 Optional custom WP_Query->max_num_pages.
     2714 *                                                                              Default $GLOBALS['wp_query']->max_num_pages
    27042715 * }
    27052716 * @return string Markup for pagination links.
    27062717 */
    27072718function get_the_posts_pagination( $args = array() ) {
     2719       
    27082720        $navigation = '';
     2721       
     2722        // Use global if no $max_num_pages provided
     2723        if( ! isset( $args['max_num_pages'] ) ) {
     2724                $args['max_num_pages'] = $GLOBALS['wp_query']->max_num_pages;
     2725        }
    27092726
    27102727        // Don't print empty markup if there's only one page.
    2711         if ( $GLOBALS['wp_query']->max_num_pages > 1 ) {
     2728        if ( $args['max_num_pages'] > 1 ) {
    27122729                // Make sure the nav element has an aria-label attribute: fallback to the screen reader text.
    27132730                if ( ! empty( $args['screen_reader_text'] ) && empty( $args['aria_label'] ) ) {
    27142731                        $args['aria_label'] = $args['screen_reader_text'];
     
    27222739                                'next_text'          => _x( 'Next', 'next set of posts' ),
    27232740                                'screen_reader_text' => __( 'Posts navigation' ),
    27242741                                'aria_label'         => __( 'Posts' ),
     2742                                'total'                          => $args['max_num_pages'],
    27252743                        )
    27262744                );
    27272745