PHPackages                             tscms/pagination - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. tscms/pagination

ActiveKohana-module[Utility &amp; Helpers](/categories/utility)

tscms/pagination
================

Kohana module to manage pagination quick and easy

015PHP

Since Jan 15Pushed 10y ago1 watchersCompare

[ Source](https://github.com/tscms/pagination)[ Packagist](https://packagist.org/packages/tscms/pagination)[ RSS](/packages/tscms-pagination/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (3)Used By (0)

Kohana 3.3 and 3.2 Pagination
-----------------------------

[](#kohana-33-and-32-pagination)

This is pretty much hacked up to support Kohana 3.3 and 3.2 so there are a few things to note:

- Request, Route and route parameters dependency injection added
- Current Request is used by default instead of the initial one ($\_GET was used directly in &lt; 3.2)
- URL::query() has been removed, Pagination::query() added instead (HMVC support)
- Add feauture to limit links in rendered html template.

Usage Example
-------------

[](#usage-example)

```
    //first calc average count
    $count     = $count_sql->count_all();

    //you can change items_per_page
    $num = 10;
    //you can configure routes and custom routes params
    $pagination = Pagination::factory(array(
                        'total_items'    => $count,
                        'items_per_page' => $num,
    //                    'current_page'   => Request::current()->param("page"),
                            )
                    )
                    ->route_params(array(
                'directory'  => Request::current()->directory(),
                'controller' => Request::current()->controller(),
                'action'     => Request::current()->action(),
                "id"         => $date,
                "id2"        => $date2,
                    )
            );

    //now select from your DB using calculated offset
    $logs = $logs_sql->order_by("id", "DESC")
                    ->limit($pagination->items_per_page)
                    ->offset($pagination->offset)
                    ->group_by("id")
                    ->find_all()->as_array();

    //and finally set view variables
    $this->content = View::factory("admin/log/asb/main.tpl")
            ->set("logs", $logs)
            ->set('pagination', $pagination);

```

Variable $pagination will automatically convert to rendered from tpl html.

In this version added some new config features!

Config Example:
---------------

[](#config-example)

```
    return array(
        // Application defaults
        'default' => array(
            // source: "query_string" or "route"
            'current_page'      => array('source' => 'query_string',
                                         'key'    => 'page'),
            'total_items'       => 0,
            'items_per_page'    => 10,
            'view'              => 'pagination/limited',
            'auto_hide'         => TRUE,
            'first_page_in_url' => FALSE,

            //NEW! Use limited template.
            'max_left_pages'    => 10,
            'max_right_pages'   => 10,
        ),
    );

```

In pagination/view folder added limited tpl, witch can limit number of left and right pages links by config variables.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/da33ce3ad3b455d147b7a0b6450ac011d08fa4c404a2b328d446995cd4e83d3b?d=identicon)[Vagabondtq](/maintainers/Vagabondtq)

---

Top Contributors

[![seyfer](https://avatars.githubusercontent.com/u/1483925?v=4)](https://github.com/seyfer "seyfer (9 commits)")[![kemo](https://avatars.githubusercontent.com/u/100160?v=4)](https://github.com/kemo "kemo (6 commits)")[![nikulinsasa](https://avatars.githubusercontent.com/u/3771443?v=4)](https://github.com/nikulinsasa "nikulinsasa (2 commits)")[![bistory](https://avatars.githubusercontent.com/u/108102?v=4)](https://github.com/bistory "bistory (1 commits)")[![kerkness](https://avatars.githubusercontent.com/u/95617?v=4)](https://github.com/kerkness "kerkness (1 commits)")[![truongthaison](https://avatars.githubusercontent.com/u/7956129?v=4)](https://github.com/truongthaison "truongthaison (1 commits)")

### Embed Badge

![Health badge](/badges/tscms-pagination/health.svg)

```
[![Health](https://phpackages.com/badges/tscms-pagination/health.svg)](https://phpackages.com/packages/tscms-pagination)
```

###  Alternatives

[rs/laravel-version-control

Foundations for making your app version controlled. Provides migration, blueprint and base models. Will make your app GxP compliant if you exclusively use the VC models and table structure as set out in this package.

1227.5k](/packages/rs-laravel-version-control)[mad-web/laravel-seoable

Easy to map your eloquent fields to seo properties

407.6k](/packages/mad-web-laravel-seoable)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
