WordPress.org

Make WordPress Core

Ticket #35696: 35696.patch

File 35696.patch, 4.6 KB (added by ramiy, 5 years ago)
  • wp-includes/general-template.php

     
    29442944 *     @type string $add_fragment       A string to append to each link. Default empty.
    29452945 *     @type string $before_page_number A string to appear before the page number. Default empty.
    29462946 *     @type string $after_page_number  A string to append after the page number. Default empty.
     2947 *     @type array  $classes {
     2948 *          Optional. An array of different classes.
     2949 *
     2950 *          @type string $ul                 Class for the 'ul' tag. Default 'page-numbers'.
     2951 *          @type string $li                 Class for the 'li' tag. Default empty.
     2952 *          @type string $a                  Class for the 'a' tag. Default 'page-numbers'.
     2953 *          @type string $prev               Class for the previous. Default 'prev'.
     2954 *          @type string $next               Class for the next. Default 'next'.
     2955 *          @type string $current            Class for the current. Default 'current'.
     2956 *          @type string $dots               Class for the dots. Default 'dots'.
     2957 *     }
    29472958 * }
    29482959 * @return array|string|void String of page links or array of page links.
    29492960 */
     
    29802991                'add_args' => array(), // array of query args to add
    29812992                'add_fragment' => '',
    29822993                'before_page_number' => '',
    2983                 'after_page_number' => ''
     2994                'after_page_number' => '',
     2995                'classes' => array(
     2996                        'ul'      => 'page-numbers',
     2997                        'li'      => '',
     2998                        'a'       => 'page-numbers',
     2999                        'prev'    => 'prev',
     3000                        'next'    => 'next',
     3001                        'current' => 'current',
     3002                        'dots'    => 'dots'
     3003                )
    29843004        );
    29853005
    29863006        $args = wp_parse_args( $args, $defaults );
     
    30403060                 *
    30413061                 * @param string $link The paginated link URL.
    30423062                 */
    3043                 $page_links[] = '<a class="prev page-numbers" href="' . esc_url( apply_filters( 'paginate_links', $link ) ) . '">' . $args['prev_text'] . '</a>';
     3063                $page_links[] = '<a class="' . $args['classes']['a'] . ' ' . $args['classes']['prev'] . '" href="' . esc_url( apply_filters( 'paginate_links', $link ) ) . '">' . $args['prev_text'] . '</a>';
    30443064        endif;
    30453065        for ( $n = 1; $n <= $total; $n++ ) :
    30463066                if ( $n == $current ) :
    3047                         $page_links[] = "<span class='page-numbers current'>" . $args['before_page_number'] . number_format_i18n( $n ) . $args['after_page_number'] . "</span>";
     3067                        $page_links[] = "<span class='" . $args['classes']['a'] . " " . $args['classes']['current'] . "'>" . $args['before_page_number'] . number_format_i18n( $n ) . $args['after_page_number'] . "</span>";
    30483068                        $dots = true;
    30493069                else :
    30503070                        if ( $args['show_all'] || ( $n <= $end_size || ( $current && $n >= $current - $mid_size && $n <= $current + $mid_size ) || $n > $total - $end_size ) ) :
     
    30553075                                $link .= $args['add_fragment'];
    30563076
    30573077                                /** This filter is documented in wp-includes/general-template.php */
    3058                                 $page_links[] = "<a class='page-numbers' href='" . esc_url( apply_filters( 'paginate_links', $link ) ) . "'>" . $args['before_page_number'] . number_format_i18n( $n ) . $args['after_page_number'] . "</a>";
     3078                                $page_links[] = "<a class='" . $args['classes']['a'] . "' href='" . esc_url( apply_filters( 'paginate_links', $link ) ) . "'>" . $args['before_page_number'] . number_format_i18n( $n ) . $args['after_page_number'] . "</a>";
    30593079                                $dots = true;
    30603080                        elseif ( $dots && ! $args['show_all'] ) :
    3061                                 $page_links[] = '<span class="page-numbers dots">' . __( '&hellip;' ) . '</span>';
     3081                                $page_links[] = '<span class="' . $args['classes']['a'] . ' ' . $args['classes']['dots'] . '">' . __( '&hellip;' ) . '</span>';
    30623082                                $dots = false;
    30633083                        endif;
    30643084                endif;
     
    30713091                $link .= $args['add_fragment'];
    30723092
    30733093                /** This filter is documented in wp-includes/general-template.php */
    3074                 $page_links[] = '<a class="next page-numbers" href="' . esc_url( apply_filters( 'paginate_links', $link ) ) . '">' . $args['next_text'] . '</a>';
     3094                $page_links[] = '<a class="' . $args['classes']['a'] . ' ' . $args['classes']['next'] . '" href="' . esc_url( apply_filters( 'paginate_links', $link ) ) . '">' . $args['next_text'] . '</a>';
    30753095        endif;
    30763096        switch ( $args['type'] ) {
    30773097                case 'array' :
     
    30783098                        return $page_links;
    30793099
    30803100                case 'list' :
    3081                         $r .= "<ul class='page-numbers'>\n\t<li>";
    3082                         $r .= join("</li>\n\t<li>", $page_links);
     3101                        $r .= "<ul class='" . $args['classes']['ul'] . "'>\n\t<li class='" . $args['classes']['li'] . ">";
     3102                        $r .= join("</li>\n\t<li class='" . $args['classes']['li'] . ">", $page_links);
    30833103                        $r .= "</li>\n</ul>\n";
    30843104                        break;
    30853105