theme_pager_link
- Versions
- 4.7 – 6
theme_pager_link($text,$page_new,$element,$parameters= array(),$attributes= array())- 7
theme_pager_link($variables)
Format a link to a specific query result page.
Parameters
$variables An associative array containing:
- page_new: The first result to display on the linked page.
- element: An optional integer to distinguish between multiple pagers on one page.
- parameters: An associative array of query string parameters to append to the pager link.
- attributes: An associative array of HTML attributes to apply to a pager anchor tag.
Return value
An HTML string that generates the link.
Related topics
Code
includes/pager.inc, line 486
<?php
function theme_pager_link($variables) {
$text = $variables['text'];
$page_new = $variables['page_new'];
$element = $variables['element'];
$parameters = $variables['parameters'];
$attributes = $variables['attributes'];
$page = isset($_GET['page']) ? $_GET['page'] : '';
if ($new_page = implode(',', pager_load_array($page_new[$element], $element, explode(',', $page)))) {
$parameters['page'] = $new_page;
}
$query = array();
if (count($parameters)) {
$query = drupal_get_query_parameters($parameters, array());
}
if ($query_pager = pager_get_query_parameters()) {
$query = array_merge($query, $query_pager);
}
// Set each pager link title
if (!isset($attributes['title'])) {
static $titles = NULL;
if (!isset($titles)) {
$titles = array(
t('« first') => t('Go to first page'),
t('‹ previous') => t('Go to previous page'),
t('next ›') => t('Go to next page'),
t('last »') => t('Go to last page'),
);
}
if (isset($titles[$text])) {
$attributes['title'] = $titles[$text];
}
elseif (is_numeric($text)) {
$attributes['title'] = t('Go to page @number', array('@number' => $text));
}
}
return l($text, $_GET['q'], array('attributes' => $attributes, 'query' => $query));
}
?>Login or register to post comments 