function theme_pager_link
theme_pager_link($variables)
Returns HTML for a link to a specific query result page.
Parameters
$variables: An associative array containing:
- text: The link text. Also used to figure out the title attribute of the link, if it is not provided in $variables['attributes']['title']; in this case, $variables['text'] must be one of the standard pager link text strings that would be generated by the pager theme functions, such as a number or t('« first').
- 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 the pager link.
See also
Related topics
File
- includes/pager.inc, line 594
- Functions to aid in presenting database results as a set of pages.
Code
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)); } } // @todo l() cannot be used here, since it adds an 'active' class based on the // path only (which is always the current path for pager links). Apparently, // none of the pager links is active at any time - but it should still be // possible to use l() here. // @see http://drupal.org/node/1410574 $attributes['href'] = url($_GET['q'], array('query' => $query)); return '<a' . drupal_attributes($attributes) . '>' . check_plain($text) . '</a>'; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/includes!pager.inc/function/theme_pager_link/7.x