Home / functions.php / Add pagination to your blog
  • How to Add pagination to your blog

    add-pagination-to-your-blog

    Add the first block of code to the functions.php of your wordpress theme, then just add the my_paginate_links() function in the location you wish to have your pagination appear.

    ( click code to copy )

    wordpress snippet : PHP - functions.php

    <>
       function my_paginate_links() {
       global $wp_rewrite, $wp_query;
       $wp_query->query_vars['paged'] > 1 ? $current = $wp_query->query_vars['paged'] : $current = 1;
       $pagination = array(
         'base' => @add_query_arg('paged','%#%'),
         'format' => '',
         'total' => $wp_query->max_num_pages,
         'current' => $current,
         'prev_text' => __('« Previous'),
         'next_text' => __('Next »'),
         'end_size' => 1,
         'mid_size' => 2,
         'show_all' => true,
         'type' => 'list'
       );
       if ( $wp_rewrite->using_permalinks() )
       $pagination['base'] = user_trailingslashit( trailingslashit( remove_query_arg( 's', get_pagenum_link( 1 ) ) ) . 'page/%#%/', 'paged' );
       if ( !empty( $wp_query->query_vars['s'] ) )
       $pagination['add_args'] = array( 's' => get_query_var( 's' ) );
       echo paginate_links( $pagination );
       }
    
    ( click code to copy )

    wordpress snippet : PHP

    <>
    <?
            my_paginate_links();
    ?>
    

    ( WordPress codex functions, hooks, in this snippet. )

    query, query_vars, get_page, paginate_links, trailingslashit, __, _n, add_query_arg, get_query_var, remove_query_arg, wp,