CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Reporting Security Issues
    • Privacy Policy
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Get Involved
    • Issues (GitHub)
    • Bakery
    • Featured Resources
    • Training
    • Meetups
    • My CakePHP
    • CakeFest
    • Newsletter
    • Linkedin
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • Help & Support
    • Forum
    • Stack Overflow
    • Slack
    • Paid Support
CakePHP

C CakePHP 2.4 API

  • Overview
  • Tree
  • Deprecated
  • Version:
    • 2.4
      • 4.2
      • 4.1
      • 4.0
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Packages

  • Cake
    • Cache
      • Engine
    • Configure
    • Console
      • Command
        • Task
    • Controller
      • Component
        • Acl
        • Auth
    • Core
    • Error
    • Event
    • I18n
    • Log
      • Engine
    • Model
      • Behavior
      • Datasource
        • Database
        • Session
      • Validator
    • Network
      • Email
      • Http
    • Routing
      • Filter
      • Route
    • TestSuite
      • Coverage
      • Fixture
      • Reporter
    • Utility
    • View
      • Helper

Classes

  • CacheHelper
  • FormHelper
  • HtmlHelper
  • JqueryEngineHelper
  • JsBaseEngineHelper
  • JsHelper
  • MootoolsEngineHelper
  • NumberHelper
  • PaginatorHelper
  • PrototypeEngineHelper
  • RssHelper
  • SessionHelper
  • TextHelper
  • TimeHelper

Class PaginatorHelper

Pagination Helper class for easy generation of pagination links.

PaginationHelper encloses all methods needed when working with pagination.

AppHelper
Extended by PaginatorHelper
Package: Cake\View\Helper
Link: http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html
Copyright: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
License: MIT License
Location: Cake/View/Helper/PaginatorHelper.php

Properties summary

  • $_ajaxHelperClass protected
    string

    The class used for 'Ajax' pagination links. Defaults to JsHelper. You should make sure that JsHelper is defined as a helper before PaginatorHelper, if you want to customize the JsHelper.

  • $helpers public
    array
    Helper dependencies
  • $options public
    array
    Holds the default options for pagination links

Magic properties summary

  • $Html public
    HtmlHelper

Method Summary

  • __construct() public
    Constructor for the helper. Sets up the helper that is used for creating 'AJAX' links.
  • _convertUrlKeys() protected
    Converts the keys being used into the format set by options.paramType
  • _hasPage() protected
    Does $model have $page in its range?
  • _pagingLink() protected
    Protected method for generating prev/next links
  • beforeRender() public
    Before render callback. Overridden to merge passed args with URL options.
  • counter() public deprecated
    Returns a counter string for the paged result set
  • current() public
    Gets the current page of the recordset for the given model
  • defaultModel() public
    Gets the default model of the paged sets
  • first() public
    Returns a first or set of numbers for the first pages.
  • hasNext() public
    Returns true if the given result set is not at the last page
  • hasPage() public
    Returns true if the given result set has the page number given by $page
  • hasPrev() public
    Returns true if the given result set is not at the first page
  • last() public
    Returns a last or set of numbers for the last pages.
  • link() public
    Generates a plain or Ajax link with pagination parameters
  • next() public
    Generates a "next" link for a set of paged records
  • numbers() public

    Returns a set of numbers for the paged result set uses a modulus to decide how many numbers to show on each side of the current page (default: 8).

  • options() public
    Sets default options for all pagination links
  • param() public
    Convenience access to any of the paginator params.
  • params() public
    Gets the current paging parameters from the resultset for the given model
  • prev() public
    Generates a "previous" link for a set of paged records
  • sort() public

    Generates a sorting link. Sets named parameters for the sort and direction. Handles direction switching automatically.

  • sortDir() public
    Gets the current direction the recordset is sorted
  • sortKey() public
    Gets the current key by which the recordset is sorted
  • url() public
    Merges passed URL options with current pagination state to generate a pagination URL.

Method Detail

__construct() public ¶

__construct( View $View , array $settings = array() )

Constructor for the helper. Sets up the helper that is used for creating 'AJAX' links.

Use public $helpers = array('Paginator' => array('ajax' => 'CustomHelper')); to set a custom Helper or choose a non JsHelper Helper. If you want to use a specific library with JsHelper declare JsHelper and its adapter before including PaginatorHelper in your helpers array.

The chosen custom helper must implement a link() method.

Parameters
View $View
the view object the helper is attached to.
array $settings optional array()
Array of settings.
Throws
CakeException
When the AjaxProvider helper does not implement a link method.

_convertUrlKeys() protected ¶

_convertUrlKeys( array $url , string $type )

Converts the keys being used into the format set by options.paramType

Parameters
array $url
Array of URL params to convert
string $type
Returns
array
converted URL params.

_hasPage() protected ¶

_hasPage( string $model , integer $page )

Does $model have $page in its range?

Parameters
string $model
Model name to get parameters for.
integer $page
Page number you are checking.
Returns
boolean
Whether model has $page

_pagingLink() protected ¶

_pagingLink( string $which , string $title = null , array $options = array() , string $disabledTitle = null , array $disabledOptions = array() )

Protected method for generating prev/next links

Parameters
string $which
string $title optional null
array $options optional array()
string $disabledTitle optional null
array $disabledOptions optional array()
Returns
string

beforeRender() public ¶

beforeRender( string $viewFile )

Before render callback. Overridden to merge passed args with URL options.

Parameters
string $viewFile

counter() public deprecated ¶

counter( array $options = array() )

Returns a counter string for the paged result set

Options

  • model The model to use, defaults to PaginatorHelper::defaultModel();
  • format The format string you want to use, defaults to 'pages' Which generates output like '1 of 5' set to 'range' to generate output like '1 - 3 of 13'. Can also be set to a custom string, containing the following placeholders {:page}, {:pages}, {:current}, {:count}, {:model}, {:start}, {:end} and any custom content you would like.
  • separator The separator string to use, default to ' of '

The %page% style placeholders also work, but are deprecated and will be removed in a future version.

Deprecated
The %page% style placeholders are deprecated.
Parameters
array $options optional array()
Options for the counter string. See #options for list of keys.
Returns
string
Counter string.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::counter

current() public ¶

current( string $model = null )

Gets the current page of the recordset for the given model

Parameters
string $model optional null
Optional model name. Uses the default if none is specified.
Returns
string
The current page number of the recordset.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::current

defaultModel() public ¶

defaultModel( )

Gets the default model of the paged sets

Returns
string
Model name or null if the pagination isn't initialized.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::defaultModel

first() public ¶

first( string|integer $first = '<< first' , array $options = array() )

Returns a first or set of numbers for the first pages.

echo $this->Paginator->first('< first');

Creates a single link for the first page. Will output nothing if you are on the first page.

echo $this->Paginator->first(3);

Will create links for the first 3 pages, once you get to the third or greater page. Prior to that nothing will be output.

Options:

  • tag The tag wrapping tag you want to use, defaults to 'span'
  • after Content to insert after the link/tag
  • model The model to use defaults to PaginatorHelper::defaultModel()
  • separator Content between the generated links, defaults to ' | '
  • ellipsis Content for ellipsis, defaults to '...'
Parameters
string|integer $first optional '<< first'

if string use as label for the link. If numeric, the number of page links you want at the beginning of the range.

array $options optional array()
An array of options.
Returns
string
numbers string.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::first

hasNext() public ¶

hasNext( string $model = null )

Returns true if the given result set is not at the last page

Parameters
string $model optional null
Optional model name. Uses the default if none is specified.
Returns
boolean
True if the result set is not at the last page.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::hasNext

hasPage() public ¶

hasPage( string $model = null , integer $page = 1 )

Returns true if the given result set has the page number given by $page

Parameters
string $model optional null
Optional model name. Uses the default if none is specified.
integer $page optional 1
The page number - if not set defaults to 1.
Returns
boolean
True if the given result set has the specified page number.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::hasPage

hasPrev() public ¶

hasPrev( string $model = null )

Returns true if the given result set is not at the first page

Parameters
string $model optional null
Optional model name. Uses the default if none is specified.
Returns
boolean
True if the result set is not at the first page.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::hasPrev

last() public ¶

last( string|integer $last = 'last >>' , array $options = array() )

Returns a last or set of numbers for the last pages.

echo $this->Paginator->last('last >');

Creates a single link for the last page. Will output nothing if you are on the last page.

echo $this->Paginator->last(3);

Will create links for the last 3 pages. Once you enter the page range, no output will be created.

Options:

  • tag The tag wrapping tag you want to use, defaults to 'span'
  • before Content to insert before the link/tag
  • model The model to use defaults to PaginatorHelper::defaultModel()
  • separator Content between the generated links, defaults to ' | '
  • ellipsis Content for ellipsis, defaults to '...'
Parameters
string|integer $last optional 'last >>'
if string use as label for the link, if numeric print page numbers
array $options optional array()
Array of options
Returns
string
numbers string.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::last

link() public ¶

link( string $title , string|array $url = array() , array $options = array() )

Generates a plain or Ajax link with pagination parameters

Options

  • update The Id of the DOM element you wish to update. Creates Ajax enabled links with the AjaxHelper.
  • escape Whether you want the contents html entity encoded, defaults to true
  • model The model to use, defaults to PaginatorHelper::defaultModel()
Parameters
string $title
Title for the link.
string|array $url optional array()
URL for the action. See Router::url()
array $options optional array()
Options for the link. See #options for list of keys.
Returns
string
A link with pagination parameters.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::link

next() public ¶

next( string $title = 'Next >>' , array $options = array() , string $disabledTitle = null , array $disabledOptions = array() )

Generates a "next" link for a set of paged records

Options:

  • url Allows sending routing parameters such as controllers, actions or passed arguments.
  • tag The tag wrapping tag you want to use, defaults to 'span'. Set this to false to disable this option
  • escape Whether you want the contents html entity encoded, defaults to true
  • model The model to use, defaults to PaginatorHelper::defaultModel()
  • disabledTag Tag to use instead of A tag when there is no next page
Parameters
string $title optional 'Next >>'
Title for the link. Defaults to 'Next >>'.
array $options optional array()
Options for pagination link. See above for list of keys.
string $disabledTitle optional null
Title when the link is disabled.
array $disabledOptions optional array()
Options for the disabled pagination link. See above for list of keys.
Returns
string
A "next" link or $disabledTitle text if the link is disabled.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::next

numbers() public ¶

numbers( array $options = array() )

Returns a set of numbers for the paged result set uses a modulus to decide how many numbers to show on each side of the current page (default: 8).

$this->Paginator->numbers(array('first' => 2, 'last' => 2));

Using the first and last options you can create links to the beginning and end of the page set.

Options

  • before Content to be inserted before the numbers
  • after Content to be inserted after the numbers
  • model Model to create numbers for, defaults to PaginatorHelper::defaultModel()
  • modulus how many numbers to include on either side of the current page, defaults to 8.
  • separator Separator content defaults to ' | '
  • tag The tag to wrap links in, defaults to 'span'
  • first Whether you want first links generated, set to an integer to define the number of 'first' links to generate.
  • last Whether you want last links generated, set to an integer to define the number of 'last' links to generate.
  • ellipsis Ellipsis content, defaults to '...'
  • class Class for wrapper tag
  • currentClass Class for wrapper tag on current active page, defaults to 'current'
  • currentTag Tag to use for current page number, defaults to null
Parameters
array $options optional array()
Options for the numbers, (before, after, model, modulus, separator)
Returns
string
numbers string.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::numbers

options() public ¶

options( array|string $options = array() )

Sets default options for all pagination links

Parameters
array|string $options optional array()

Default options for pagination links. If a string is supplied - it is used as the DOM id element to update. See PaginatorHelper::$options for list of keys.

Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::options

param() public ¶

param( string $key , string $model = null )

Convenience access to any of the paginator params.

Parameters
string $key
Key of the paginator params array to retrieve.
string $model optional null
Optional model name. Uses the default if none is specified.
Returns
mixed
Content of the requested param.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::params

params() public ¶

params( string $model = null )

Gets the current paging parameters from the resultset for the given model

Parameters
string $model optional null
Optional model name. Uses the default if none is specified.
Returns
array
The array of paging parameters for the paginated resultset.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::params

prev() public ¶

prev( string $title = '<< Previous' , array $options = array() , string $disabledTitle = null , array $disabledOptions = array() )

Generates a "previous" link for a set of paged records

Options:

  • url Allows sending routing parameters such as controllers, actions or passed arguments.
  • tag The tag wrapping tag you want to use, defaults to 'span'. Set this to false to disable this option
  • escape Whether you want the contents html entity encoded, defaults to true
  • model The model to use, defaults to PaginatorHelper::defaultModel()
  • disabledTag Tag to use instead of A tag when there is no previous page
Parameters
string $title optional '<< Previous'
Title for the link. Defaults to '<< Previous'.
array $options optional array()
Options for pagination link. See #options for list of keys.
string $disabledTitle optional null
Title when the link is disabled.
array $disabledOptions optional array()
Options for the disabled pagination link. See #options for list of keys.
Returns
string
A "previous" link or $disabledTitle text if the link is disabled.
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::prev

sort() public ¶

sort( string $key , string $title = null , array $options = array() )

Generates a sorting link. Sets named parameters for the sort and direction. Handles direction switching automatically.

Options:

  • escape Whether you want the contents html entity encoded, defaults to true
  • model The model to use, defaults to PaginatorHelper::defaultModel()
  • direction The default direction to use when this link isn't active.
Parameters
string $key
The name of the key that the recordset should be sorted.
string $title optional null

Title for the link. If $title is null $key will be used for the title and will be generated by inflection.

array $options optional array()
Options for sorting link. See above for list of keys.
Returns
string

A link sorting default by 'asc'. If the resultset is sorted 'asc' by the specified key the returned link will sort by 'desc'.


Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::sort

sortDir() public ¶

sortDir( string $model = null , array $options = array() )

Gets the current direction the recordset is sorted

Parameters
string $model optional null
Optional model name. Uses the default if none is specified.
array $options optional array()
Options for pagination links. See #options for list of keys.
Returns
string

The direction by which the recordset is being sorted, or null if the results are not currently sorted.


Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::sortDir

sortKey() public ¶

sortKey( string $model = null , array $options = array() )

Gets the current key by which the recordset is sorted

Parameters
string $model optional null
Optional model name. Uses the default if none is specified.
array $options optional array()
Options for pagination links. See #options for list of keys.
Returns
string

The name of the key by which the recordset is being sorted, or null if the results are not currently sorted.


Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::sortKey

url() public ¶

url( array $options = array() , boolean $asArray = false , string $model = null )

Merges passed URL options with current pagination state to generate a pagination URL.

Parameters
array $options optional array()
Pagination/URL options array
boolean $asArray optional false
Return the URL as an array, or a URI string
string $model optional null
Which model to paginate on
Returns
mixed
By default, returns a full pagination URL string for use in non-standard contexts (i.e. JavaScript)
Link
http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper::url

Properties detail

$_ajaxHelperClass ¶

protected string

The class used for 'Ajax' pagination links. Defaults to JsHelper. You should make sure that JsHelper is defined as a helper before PaginatorHelper, if you want to customize the JsHelper.

'Js'

$helpers ¶

public array

Helper dependencies

array('Html')

$options ¶

public array

Holds the default options for pagination links

The values that may be specified are:

  • format Format of the counter. Supported formats are 'range' and 'pages' and custom (default). In the default mode the supplied string is parsed and constants are replaced by their actual values. placeholders: %page%, %pages%, %current%, %count%, %start%, %end% .
  • separator The separator of the actual page and number of pages (default: ' of ').
  • url Url of the action. See Router::url()
  • url['sort'] the key that the recordset is sorted.
  • url['direction'] Direction of the sorting (default: 'asc').
  • url['page'] Page number to use in links.
  • model The name of the model.
  • escape Defines if the title field for the link should be escaped (default: true).
  • update DOM id of the element updated with the results of the AJAX call. If this key isn't specified Paginator will use plain HTML links.
  • paging['paramType'] The type of parameters to use when creating links. Valid options are 'querystring' and 'named'. See PaginatorComponent::$settings for more information.
  • convertKeys - A list of keys in URL arrays that should be converted to querysting params if paramType == 'querystring'.
array(
    'convertKeys' => array('page', 'limit', 'sort', 'direction')
)

Magic properties detail

$Html ¶

public HtmlHelper
OpenHub
Rackspace
Rackspace
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Reporting Security Issues
  • Privacy Policy
  • Logos & Trademarks
  • Community
  • Get Involved
  • Issues (GitHub)
  • Bakery
  • Featured Resources
  • Training
  • Meetups
  • My CakePHP
  • CakeFest
  • Newsletter
  • Linkedin
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • Help & Support
  • Forum
  • Stack Overflow
  • Slack
  • Paid Support

Generated using CakePHP API Docs