2010-09-01 4 views
0

Je termine quelques éditions sur un projet drupal qui a été fait par un autre programmeur (je n'ai aucun contact avec lui). Je suis un débutant et essaie de découvrir comment fonctionne le module de pagination. Il n'y a pas de nombre de pages affichées. Je suppose que le programmeur a ajouté un module personnalisé ou quelque chose.Le module de pagination de Drupal ne montre pas le nombre de pages

Je trouve un fichier nommé « pager.php » dans son propre dossier thématique du projet avec cette fonction, qui fait probablement la Pagination:

function _my_pager_link($page, $text, $class, $title) { 
$query = array(); 
$query[] = drupal_query_string_encode(array(
    'page' => implode(',', $page)), array()); 
$querystring = pager_get_querystring(); 
if ($querystring != '') { 
    $query[] = $querystring; 
} 
$attributes['title'] = $title; 
$attributes['class'] = $class; 
return l("<span>$text</span>", $_GET['q'], array('html' => TRUE, 
    'attributes' => $attributes, 
    'query' => count($query) ? implode('&', $query) : NULL)); 
} 

function my_pager($tags = array(), $limit = 10, $element = 0, $parameters = array(), $quantity = 5) { 
global $pager_page_array, $pager_total; 

$curr = $pager_page_array[$element]; 
$total = $pager_total[$element]; 
$output = ''; 
if ($total > 1) { 
    $output .= '<div class="pager">'; 
    if ($curr > 0) { 
     $page_new = pager_load_array($curr - 1, $element, $pager_page_array); 
     $output .= _my_pager_link($page_new, t('‹ previous'), 'pager-prev', t('Go to previous page')); 
    } 
    if ($curr < $total - 1) { 
     $page_new = pager_load_array($curr + 1, $element, $pager_page_array); 
     $output .= _my_pager_link($page_new, t('next ›'), 'pager-next', t('Go to next page')); 
    } 
    $output .= '<div class="cleaner"></div>'; 
    $output .= '</div>'; 
    } 
return $output; 
} 

Maintenant, il est juste « page précédente » et « page suivante ' sur le Web. Je voudrais que ce soit comme ceci 'page précédente' ... 2 3 4 ... 'page suivante'

Comment puis-je ajouter la liste des pages là-bas?

Merci

Répondre

0

Vous devez définir les valeurs globales comme ceci:

global $pager_page_array, $pager_total; 
$pager_page_array[0] = $your_page_count_goes_here; 
$pager_total[0] = $your_page_total_goes_here; 

Et vous pouvez appeler theme('pager', ...) ou toute fonction de thème d'appel personnalisé que vous pouvez avoir.

Questions connexes