Version Not Yet Released
You are viewing the documentation for the 5.x branch of the Pagerfanta package which has not yet been released. Be aware that the API for this version may change before release.
Templates
Pagerfanta defines Pagerfanta\View\Template\TemplateInterface
which is an abstraction layer for building the markup for different sections of a pagination list.
The interface requires several methods to be implemented:
setRouteGenerator
: Injects the route generator to use while rendering the templatesetOptions
: Sets options for the templatecontainer
: Generates the wrapping container for the pagination listpage
: Generates the markup for a single page in the pagination listpageWithText
: Generates the markup for a single page with the specified text labelpreviousDisabled
: Generates the markup for the previous page button in the disabled statepreviousEnabled
: Generates the markup for the previous page button in the enabled statenextDisabled
: Generates the markup for the next page button in the disabled statenextEnabled
: Generates the markup for the next page button in the enabled statefirst
: Generates the markup for the first page buttonlast
: Generates the markup for the last page buttoncurrent
: Generates the markup for the current page buttonseparator
: Generates the markup for a separator button, used to represent a break in a list of pages (i.e. 1, 2, ..., 6, 7)
<?php
namespace Pagerfanta\View\Template;
use Pagerfanta\RouteGenerator\RouteGeneratorInterface;
interface TemplateInterface
{
/**
* Sets the route generator used while rendering the template.
*
* @param callable|RouteGeneratorInterface $routeGenerator
*/
public function setRouteGenerator(callable $routeGenerator): void;
/**
* Sets the options for the template, overwriting keys that were previously set.
*/
public function setOptions(array $options): void;
/**
* Renders the container for the pagination.
*
* The %pages% placeholder will be replaced by the rendering of pages.
*/
public function container(): string;
/**
* Renders a given page.
*/
public function page(int $page): string;
/**
* Renders a given page with a specified text.
*/
public function pageWithText(int $page, string $text, ?string $rel = null): string;
/**
* Renders the disabled state of the previous page.
*/
public function previousDisabled(): string;
/**
* Renders the enabled state of the previous page.
*/
public function previousEnabled(int $page): string;
/**
* Renders the disabled state of the next page.
*/
public function nextDisabled(): string;
/**
* Renders the enabled state of the next page.
*/
public function nextEnabled(int $page): string;
/**
* Renders the first page.
*/
public function first(): string;
/**
* Renders the last page.
*/
public function last(int $page): string;
/**
* Renders the current page.
*/
public function current(int $page): string;
/**
* Renders the separator between pages.
*/
public function separator(): string;
}