PaginatedArray::getPaginationString() method

Get a "1 to 10 of 50" type of string useful for pagination headlines.

This returns a string of 1 to 10 of 30 (items) or 1 of 10 (pages) for example.

Since 3.0.108 you can optionally replace either of the arguments with an $options o array instead, and you can specify any of these options:

  • label (string): Label to use for items, same as $label argument (default='').
  • zeroLabel (string): Alternate label to use if there are zero items, since 3.0.127 (default='').
  • usePageNum (bool): Specify true to show page numbers rather than item numbers (default=false).
  • count (int): Use this count rather than count in this PaginatedArray (default=-1, disabled).
  • start (int): Use this start rather than start in this PaginatedArray (default=-1, disabled).
  • limit (int): Use this limit rather than limit in this PaginatedArray (default=-1, disabled).
  • total (int): Use this total rather than total in this PaginatedArray (default=-1, disabled).

Example

// Get string like "Items 1 to 25 of 500"
echo $items->getPaginationString('Items');

// Get string like "Page 1 of 10"
echo $items->getPaginationString('Page', true);

// Get string where you specify all options
echo $items->getPaginationString(array(
  'label' => 'Items',
  'zeroLabel' => 'No items found', // 3.0.127+ only
  'usePageNum' => false,
  'count' => 10,
  'start' => 0,
  'limit' => 10,
  'total' => 100
));

Usage

// basic usage
$string = $paginatedArray->getPaginationString();

// usage with all arguments
$string = $paginatedArray->getPaginationString($label = '', $usePageNum = false);

Arguments

NameType(s)Description
label (optional)string, array

Label to identify item type, i.e. "Items" or "Page", etc. (default=empty).

usePageNum (optional)bool, array

Specify true to show page numbers rather than item numbers (default=false).

Return value

string

Formatted string


PaginatedArray methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #548
    In the 548th issue of ProcessWire Weekly we're going to check out a couple of new third party modules, introduce the latest ProcessWire core updates, and more. Read on!
    Weekly.pw / 9 November 2024
  • Custom Fields Module
    This week we look at a new ProFields module named Custom Fields. This module provides a way to rapidly build out ProcessWire fields that contain any number of subfields/properties within them.
    Blog / 30 August 2024
  • Subscribe to weekly ProcessWire news

“Indeed, if ProcessWire can be considered as a CMS in its own right, it also offers all the advantages of a CMF (Content Management Framework). Unlike other solutions, the programmer is not forced to follow the proposed model and can integrate his/her ways of doing things.” —Guy Verville, Spiria Digital Inc.