diff options
Diffstat (limited to 'dist/inc/pagination.php')
| -rw-r--r-- | dist/inc/pagination.php | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/dist/inc/pagination.php b/dist/inc/pagination.php new file mode 100644 index 0000000..9a6ff79 --- /dev/null +++ b/dist/inc/pagination.php @@ -0,0 +1,56 @@ +<?php +/** + * Pagination layout. + * + * @package understrap + */ + +if ( ! defined( 'ABSPATH' ) ) { + exit; // Exit if accessed directly. +} + +if ( ! function_exists ( 'understrap_pagination' ) ) { + + function understrap_pagination( $args = array(), $class = 'pagination' ) { + + if ($GLOBALS['wp_query']->max_num_pages <= 1) return; + + $args = wp_parse_args( $args, array( + 'mid_size' => 2, + 'prev_next' => true, + 'prev_text' => __('«', 'understrap'), + 'next_text' => __('»', 'understrap'), + 'screen_reader_text' => __('Posts navigation', 'understrap'), + 'type' => 'array', + 'current' => max( 1, get_query_var('paged') ), + ) ); + + $links = paginate_links($args); + + ?> + + <nav aria-label="<?php echo $args['screen_reader_text']; ?>"> + + <ul class="pagination"> + + <?php + + foreach ( $links as $key => $link ) { ?> + + <li class="page-item <?php echo strpos( $link, 'current' ) ? 'active' : '' ?>"> + + <?php echo str_replace( 'page-numbers', 'page-link', $link ); ?> + + </li> + + <?php } ?> + + </ul> + + </nav> + + <?php + } +} + +?> |
