emails
1 week ago
form-fields
1 week ago
access-denied-browse-job_listings.php
4 years ago
access-denied-single-job_listing.php
3 years ago
account-signin.php
4 years ago
content-job_listing.php
3 months ago
content-no-jobs-found.php
7 years ago
content-single-job_listing-company.php
3 years ago
content-single-job_listing-meta.php
4 years ago
content-single-job_listing.php
1 week ago
content-summary-job_listing.php
3 months ago
content-widget-job_listing.php
3 months ago
content-widget-no-jobs-found.php
7 years ago
job-application-email.php
4 years ago
job-application-url.php
7 years ago
job-application.php
7 years ago
job-dashboard-login.php
7 years ago
job-dashboard-overlay.php
2 years ago
job-dashboard.php
2 years ago
job-filter-job-types.php
2 years ago
job-filters.php
2 years ago
job-listings-end.php
7 years ago
job-listings-start.php
7 years ago
job-pagination.php
7 years ago
job-preview.php
2 years ago
job-stats.php
3 months ago
job-submit.php
2 years ago
job-submitted.php
2 years ago
notice.php
2 years ago
pagination.php
6 years ago
job-pagination.php
56 lines
| 1 | <?php |
| 2 | /** |
| 3 | * Pagination - Show numbered pagination for the `[jobs]` shortcode. |
| 4 | * |
| 5 | * This template can be overridden by copying it to yourtheme/job_manager/job-pagination.php. |
| 6 | * |
| 7 | * @see https://wpjobmanager.com/document/template-overrides/ |
| 8 | * @author Automattic |
| 9 | * @package wp-job-manager |
| 10 | * @category Template |
| 11 | * @version 1.31.1 |
| 12 | */ |
| 13 | |
| 14 | if ( ! defined( 'ABSPATH' ) ) { |
| 15 | exit; // Exit if accessed directly. |
| 16 | } |
| 17 | |
| 18 | if ( $max_num_pages <= 1 ) { |
| 19 | return; |
| 20 | } |
| 21 | |
| 22 | // Calculate pages to output. |
| 23 | $end_size = 3; |
| 24 | $mid_size = 3; |
| 25 | $start_pages = range( 1, $end_size ); |
| 26 | $end_pages = range( $max_num_pages - $end_size + 1, $max_num_pages ); |
| 27 | $mid_pages = range( $current_page - $mid_size, $current_page + $mid_size ); |
| 28 | $pages = array_intersect( range( 1, $max_num_pages ), array_merge( $start_pages, $end_pages, $mid_pages ) ); |
| 29 | $prev_page = 0; |
| 30 | ?> |
| 31 | <nav class="job-manager-pagination"> |
| 32 | <ul> |
| 33 | <?php if ( $current_page && $current_page > 1 ) : ?> |
| 34 | <li><a href="#" data-page="<?php echo esc_attr( $current_page - 1 ); ?>">←</a></li> |
| 35 | <?php endif; ?> |
| 36 | |
| 37 | <?php |
| 38 | foreach ( $pages as $page ) { |
| 39 | if ( $prev_page != $page - 1 ) { |
| 40 | echo '<li><span class="gap">...</span></li>'; |
| 41 | } |
| 42 | if ( $current_page == $page ) { |
| 43 | echo '<li><span class="current" data-page="' . esc_attr( $page ) . '">' . esc_html( $page ) . '</span></li>'; |
| 44 | } else { |
| 45 | echo '<li><a href="#" data-page="' . esc_attr( $page ) . '">' . esc_html( $page ) . '</a></li>'; |
| 46 | } |
| 47 | $prev_page = $page; |
| 48 | } |
| 49 | ?> |
| 50 | |
| 51 | <?php if ( $current_page && $current_page < $max_num_pages ) : ?> |
| 52 | <li><a href="#" data-page="<?php echo esc_attr( $current_page + 1 ); ?>">→</a></li> |
| 53 | <?php endif; ?> |
| 54 | </ul> |
| 55 | </nav> |
| 56 |