Для Drupal 6 вы можете сделать что-то вроде этого:
$header = array(
array('data' => t('Order id'), 'field' => 'order_id'),
...
array('data' => t('Transaction time'), 'field' => 'payment_time', 'sort' => 'desc'),
);
$sql = "...";
$sql .= tablesort_sql($header);
$limit = 25;
$result = pager_query($sql, $limit);
...
Я посмотрел и на drupal 7 и то и другое pager_query
и tablesort_sql
теперь ушел. Похоже, что вместо этого PagerDefault
класс можно использовать для создания запроса на пейджер с использованием DBTNG. Я не смог найти никаких подсказок по простому API для присоединения сортируемой таблицы к запросу, как это делается в Drupal 6.
Итак, как создать сортируемую таблицу с пейджером, извлекающим данные из пользовательской таблицы?