Forked from lkhedlund/bootstrap-pagination.php
Last active
September 5, 2017 21:32
-
-
Save brettalton/7eaf7d6998d5d8bcdb23333807c4d435 to your computer and use it in GitHub Desktop.
Bootstrap v4-alpha6 Pagination for WordPress
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* custom pagination with bootstrap .pagination class | |
* source: http://www.ordinarycoder.com/paginate_links-class-ul-li-bootstrap/ | |
*/ | |
function bootstrap_pagination( $echo = true ) { | |
global $wp_query; | |
$big = 999999999; // need an unlikely integer | |
$pages = paginate_links( array( | |
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), | |
'format' => '?paged=%#%', | |
'current' => max( 1, get_query_var('paged') ), | |
'total' => $wp_query->max_num_pages, | |
'type' => 'array', | |
'prev_next' => true, | |
'prev_text' => __('« Prev'), | |
'next_text' => __('Next »'), | |
) | |
); | |
if( is_array( $pages ) ) { | |
$paged = ( get_query_var('paged') == 0 ) ? 1 : get_query_var('paged'); | |
$pagination = '<ul class="pagination">'; | |
foreach ( $pages as $page ) | |
{ | |
// bootstrap-specific class replacements/additions | |
// | |
$page = str_replace('page-numbers', 'page-numbers page-link', $page); | |
if ( strpos($page, 'current') ) | |
{ | |
$page = str_replace('current', '', $page); | |
$li_class = 'page-item active'; | |
} | |
else | |
{ | |
$li_class = 'page-item'; | |
} | |
// | |
// end replacements/additions | |
$pagination .= "<li class='$li_class'> $page </li>"; | |
} | |
$pagination .= '</ul>'; | |
if ( $echo ) { | |
echo $pagination; | |
} else { | |
return $pagination; | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment