Línguas

Fazendo uma paginação com Drupal utilizando o pager_query

Vou mostrar rapidamente como é possível fazer sua própria página utilizando recursos prontos de paginação que o drupal ofereçe.. para detalhar um pouco mais o exemplo, vou colocar o código do menu também....

então vamos lá, para criar uma página própria no seu site, crie um menu como este:


$items['noticias'] = array(
'title' => t('News'),
'page callback' => 'news_main',
'access arguments' => array('access content'),
'type' => MENU_LOCAL_TASK,
);

após criarmos o menu dentro do seu módulo, vamos escrever a função news_main, que ficará responsável por listar todas as notícias usando paginação.


function news_main(){

drupal_set_title(t('News'));

$result = pager_query(db_rewrite_sql("SELECT n.nid FROM {node} n WHERE n.type = 'news' AND n.status = 1 ORDER BY n.created"), variable_get('default_nodes_main', 10), 0, NULL, $account->uid);

while($t = db_fetch_object($result)) {
$output .= node_view(node_load(array('nid' => $t->nid)), true, false, true);
$has_resultado = TRUE;
}

if( $has_resultado ){
$output .= theme('pager', NULL, variable_get('default_nodes_main', 10));
}else{
$output .= t("You have not created any news entries.");
}

return $output;
}

o grande truque está na função pager_query, que existe desde a versão 4..

veja detalhes da função aqui: http://api.drupal.org/api/function/pager_query

para adicionar os links [1],[2],[3]....

basta chamar a função pager..

é muito fácil...

Comentários

Comentar

  • Quebras de linhas e parágrafos são feitos automaticamente.

Mais informações sobre as opções de formatação