laraish/pagination

A simple library for generating pagination.
5,512
Install
composer require laraish/pagination
Latest Version:v4.0.0
PHP:^8.2
Laravel:12
Older releases:5 – 8 · 10
License:MIT
Last Updated:Aug 17, 2025
Links: GitHub  ·  Packagist
Maintainer: yaquawa

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.

Related Packages

themosis/framework

The Themosis framework.

319,859 666
laraish/framework

The Laraish Framework for WordPress.

5,879 5
laraish/contracts

The Laraish Contracts package.

5,615 0
laraish/support

The Laraish Support Package.

5,589 0
laraish/options

Package for creating options page in WordPress.

5,554 10

Version History

Version Released PHP Laravel License
v4.0.0 ^8.2 ^12.0 MIT
v3.0.0 ^8.1 ^10.10 MIT
v2.0.0 ^7.3 ^8.0 MIT
v1.0.1 ^7.2 ^7.0 MIT
v1.0.0 ^7.2 7.* MIT