WordPress.org

Make WordPress Core

Ticket #32253: paginate-test.php

File paginate-test.php, 2.0 KB (added by netweblogic, 5 years ago)

POC for styling issues when using em_paginate

Line 
1<?php
2/*
3 Plugin Name: Pagination Test for WP 4.3
4 Version: 1.0
5 Description: Demonstrates potential issues with WP 4.3 commit https://core.trac.wordpress.org/changeset/32948
6 Author: Marcus Sykes
7 */
8
9function paginate_test_options_page(){
10    $total = 1000;
11    $limit = 20;
12    $page = !empty($_REQUEST['pno']) ? absint($_REQUEST['pno']) : 1;
13    $base = esc_url_raw(add_query_arg( 'pno', '%#%' ));
14    ?>
15    <h1>Check out pagination... </h1>
16    <div class="tablenav" style="width:50%;">
17        <div class="tablenav-pages">
18            <?php
19                echo sprintf( '<span class="displaying-num">Displaying %s&#8211;%s of %s</span>', number_format_i18n( ( $page - 1 ) * $limit + 1 ), number_format_i18n( min( $page * $limit, $total ) ), number_format_i18n( $total ));
20                echo paginate_links( array(
21                    'base' => $base,
22                    'total' => ceil($total / $limit),
23                    'current' => $page
24                ));
25            ?>
26        </div>
27    </div>
28    <h2>Without the prev/next text still causes issues:</h2>
29    <div class="tablenav" style="width:50%;">
30        <div class="tablenav-pages">
31            <?php
32                echo sprintf( '<span class="displaying-num">Displaying %s&#8211;%s of %s</span>', number_format_i18n( ( $page - 1 ) * $limit + 1 ), number_format_i18n( min( $page * $limit, $total ) ), number_format_i18n( $total ));
33                echo paginate_links( array(
34                    'base' => $base,
35                    'total' => ceil($total / $limit),
36                    'current' => $page,
37                    'prev_text' =>'&laquo;',
38                    'next_text' => '&raquo;'
39                ));
40            ?>
41        </div>
42    </div>
43    <?php
44}
45
46function pagination_test_settings_menu(){
47    add_options_page('Pagination Test', 'Pagination Test', 'list_users', 'paginate-test', 'paginate_test_options_page');
48}
49add_action ( 'admin_menu', 'pagination_test_settings_menu');