Advertisement
darrenbachan

Untitled

Jun 12th, 2016
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.43 KB | None | 0 0
  1. function wp_custom_pagination($args = [], $class = 'pagination') {
  2.            
  3.             global $wp_query;
  4.             $mid_size = 1; // default to 1 number each side
  5.  
  6.             // Check if we are on the first or last page
  7.             $current_page = get_query_var('paged');
  8.             if ( !$current_page || $current_page == $wp_query->max_num_pages ) {
  9.                 $mid_size = 1; // 1 numbers before/after the current page
  10.             }
  11.  
  12.             $args = wp_parse_args( $args, [
  13.                 'mid_size'           => $mid_size,
  14.                 'prev_next'          => false,
  15.                 'prev_text'          => __('Older posts', 'textdomain'),
  16.                 'next_text'          => __('Newer posts', 'textdomain'),
  17.                 'screen_reader_text' => __('Posts navigation', 'textdomain'),
  18.             ]);
  19.  
  20.             $links     = paginate_links($args);
  21.             $next_link = get_previous_posts_link($args['next_text']);
  22.             $prev_link = get_next_posts_link($args['prev_text']);
  23.             $template  = apply_filters( 'navigation_markup_template', '
  24.             <nav class="navigation %1$s" role="navigation">
  25.                 <div class="nav-links">%3$s<div class="page-numbers-container">%4$s</div>%5$s</div>
  26.             </nav>', $args, $class);
  27.  
  28.             echo sprintf($template, $class, $args['screen_reader_text'], $prev_link, $links, $next_link);
  29.  
  30.         }
  31.         add_filter('previous_posts_link_attributes', function()
  32.         {
  33.         return 'class="next"';
  34.         });
  35.  
  36.         add_filter('next_posts_link_attributes', function()
  37.         {
  38.         return 'class="prev"';
  39.         });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement