laraish/pagination
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.
defaultmenusimple
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/10queryString: 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
Wordpress integrated with Laravel via Composer. Together, but independents.
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 | |
| v0.6.1 | ^7.2 | 7.* | MIT | |
| v0.6.0 | ^7.2 | 7.* | MIT | |
| v0.4.0 | ^7.2 | 7.* | MIT | |
| v0.3.3 | ^7.2 | 6.* | MIT | |
| v0.3.2 | >=7.1.3 | 6.* | MIT | |
| v0.3.1 | >=7.1.3 | 5.7.* | MIT | |
| v0.3.0 | >=7.1.3 | 5.7.* | MIT | |
| v0.2.1 | >=7.1.3 | 5.6.* | MIT | |
| v0.2.0 | >=7.1.3 | 5.6.* | MIT | |
| v0.1.6 | >=5.6.4 | 5.5.* | MIT | |
| v0.1.5 | >=5.6.4 | 5.5.* | MIT | |
| v0.1.4 | >=5.6.4 | 5.5.* | MIT | |
| v0.1.3 | >=5.6.4 | 5.4.* | MIT | |
| v0.1.2 | >=5.6.4 | 5.4.* | MIT | |
| v0.1.1 | >=5.6.4 | 5.3.* | MIT | |
| v0.1.0 | >=5.6.4 | 5.3.* | MIT |