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