Renderização de pager de camada de abstração Drupal 7 dB

ao usar db_select () e o resultado desejado é ter uma saída de pager extend (‘PagerDefault’) e limit (30); as funções devem fazer parte da declaração de classe original.

$topics = db_select('taxonomy_term_data', 'ttd')
->extend('PagerDefault')
->limit(30);
$topics
->fields('ttd', array('tid', 'name'))
->orderBy('n.changed', 'DESC')
->condition('ttd.vid', 3)
->distinct();
$topics
->innerJoin('field_data_field_tax_special_topic', 'sp', 'ttd.tid = field_tax_special_topic_tid');
$topics
->leftJoin('node', 'n', 'n.nid = sp.entity_id');
$result
= $topics->execute();

Trabalharia

Enquanto

$topics = db_select('taxonomy_term_data', 'ttd');
$topics
->fields('ttd', array('tid', 'name'))
->extend('PagerDefault')
->limit(30)
->orderBy('n.changed', 'DESC')
->condition('ttd.vid', 3)
->distinct();
$topics
->innerJoin('field_data_field_tax_special_topic', 'sp', 'ttd.tid = field_tax_special_topic_tid');
$topics
->leftJoin('node', 'n', 'n.nid = sp.entity_id');
$result
= $topics->execute();

não faria