laraish / pagination by yaquawa

A simple library for generating pagination.
4,759
0
2
Package Data
Maintainer Username: yaquawa
Maintainer Contact: yaquawa@gmail.com (yaquawa)
Package Create Date: 2016-11-06
Package Last Update: 2023-12-05
Language: PHP
License: MIT
Last Refreshed: 2024-04-19 15:11:50
Package Statistics
Total Downloads: 4,759
Monthly Downloads: 26
Daily Downloads: 2
Total Stars: 0
Total Watchers: 2
Total Forks: 4
Total Open Issues: 1

This is a simple PHP library for creating pagination.

Basic Usage

Here is an example for creating the pagination in WordPress.

global $wp_query;

// The total number of items
$total       = (int)$wp_query->found_posts;

// The number of items are going to be displayed per page.
$perPage     = (int)$wp_query->query_vars['posts_per_page'];

// The current page number.
$currentPage = (int)$wp_query->query_vars['paged'];

// additional options
$options     = ['urlStyle' => 'pretty'];


$paginator   = new Paginator($total, $perPage, $currentPage, $options);
    
echo $paginator->toHtml();

Customize the markup

If you don't like the default markup, you can specify your own view file to output the markup.

$paginator = new Paginator($total, $perPage, $currentPage, ['view'=> '/www/var/example.com/pagination.php']);

You can also specify the view with using the dot notation, for example ['view'=> 'components.pagination']; by using the dot notation it will try to use the Blade Templates if possible.

Take a look at the preset views for more details.

Options

onEachSide

| Type | Default | |------|-------- | | int | 3 |

The number of links on each side of the center link.

type

| Type | Default | |--------|---------- | | string | 'default' |

The rendering type.

  • default
  • menu
  • simple

view

| Type | Default | |--------|-------- | | string | null |

The path of view file.

Could be either a blade template or a regular php file.
If you wish to use a php file, you should add the .php at the end of the string.

urlStyle

| Type | Default | |--------|--------- | | string | 'pretty' |

The link style.

  • pretty: example.com/news/page/10
  • queryString: example.com/news/?page=10

nextPageText

| Type | Default | |--------|--------- | | string | '»' |

The next page link text.

prevPageText

| Type | Default | |--------|--------- | | string | '«' |

The previous page link text.

path

| Type | Default | |--------|-------- | | string | null |

The user-defined base path.

suffix

| Type | Default | |--------|-------- | | string | '' |

The suffix to be added to the very end of the url. Such as fragment or query-strings.