Menu Adam R Brown

WP hooks navigation: Home/browseActions indexFilters index

Source View: paginate_links

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 3 times in this file.

Line Code
2826           $link .= $args['add_fragment'];
2827
2828           /**
2829            * Filter the paginated links for the given archive pages.
2830            *
2831            * @since 3.0.0
2832            *
2833            * @param string $link The paginated link URL.
2834            */
2835           $page_links[] = '<a class="prev page-numbers" href="' . esc_url( apply_filters( 'paginate_links', $link ) ) . '">' . $args['prev_text'] . '</a>';
2836      endif;
2837      for ( $n = 1; $n <= $total; $n++ ) :
2838           if ( $n == $current ) :
2839                $page_links[] = "<span class='page-numbers current'>" . $args['before_page_number'] . number_format_i18n( $n ) . $args['after_page_number'] . "</span>";
2840                $dots = true;
2841           else :
2842                if ( $args['show_all'] || ( $n <= $end_size || ( $current && $n >= $current - $mid_size && $n <= $current + $mid_size ) || $n > $total - $end_size ) ) :
2843                     $link = str_replace( '%_%', 1 == $n ? '' : $args['format'], $args['base'] );
2844                     $link = str_replace( '%#%', $n, $link );
2845                     if ( $add_args )
2846                          $link = add_query_arg( $add_args, $link );
2847                     $link .= $args['add_fragment'];
2848
2849                     /** This filter is documented in wp-includes/general-template.php */
2850                     $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>";
2851                     $dots = true;
2852                elseif ( $dots && ! $args['show_all'] ) :
2853                     $page_links[] = '<span class="page-numbers dots">' . __( '&hellip;' ) . '</span>';
2854                     $dots = false;
2855                endif;
2856           endif;
2857      endfor;
2858      if ( $args['prev_next'] && $current && ( $current < $total || -1 == $total ) ) :
2859           $link = str_replace( '%_%', $args['format'], $args['base'] );
2860           $link = str_replace( '%#%', $current + 1, $link );
2861           if ( $add_args )
2862                $link = add_query_arg( $add_args, $link );
2863           $link .= $args['add_fragment'];
2864
2865           /** This filter is documented in wp-includes/general-template.php */
2866           $page_links[] = '<a class="next page-numbers" href="' . esc_url( apply_filters( 'paginate_links', $link ) ) . '">' . $args['next_text'] . '</a>';
2867      endif;
2868      switch ( $args['type'] ) {
2869           case 'array' :
2870                return $page_links;
2871
2872           case 'list' :
2873                $r .= "<ul class='page-numbers'>\n\t<li>";
2874                $r .= join("</li>\n\t<li>", $page_links);
2875                $r .= "</li>\n</ul>\n";