وقتی مجله، روزنامه یا کتابی می خوانید،اطلاعات موجود بصورت قطعه های هم اندازه به نام صفحه تقسیم شده اند. در دروپال روشی برای واکشی اطلاعات از دیتابیس د نمایش آنها در قطعه های کوچک به نام صفحه (pages) وجود دارد که به این امر صفحه بندی (paging) گفته می شود.
متاسفانه صفحه بندی فقط در سطح کد صورت می گیرد و برای این کار می بایست خود کد بخش مورد نظر را بنویسید.
صفحه بندی را با مثالی توضیح می دهیم.
در مثال زیر قصد بر آن است که لیست تمامی مطالب را بصورت جدولی نمایش دهیم.


<?php
// The whole process is the same as creating a regular table in Drupal, but with a few 
// minor changes which we'll make note of when we get to them.

// We start with headers for the table columns.
$headers = array(
  t('Node ID'),
  t('Type'),
  t('Title'),
);

// Create a place to store the rows when we process the query in a few moments.
// This is just like making a table in Drupal.
$rows = array();

// SQL to get all the nodes in the {node} table.  Nothing special needs to be done 
// to this query in this example.  You can even throw in an ORDER BY clause to 
// pre-sort the data.
$sql = "SELECT nid, type, title FROM {node}";

// Number of records (or nodes, in our case) to show per page.
$count = 12;

// Now, this is where paging will differ from a regular table.  We use pager_query() instead of db_query().
// Note that there are serious differences between pager_query() and db_query().  Please make sure you 
// are aware of them.
$query = pager_query($sql, $count);

// Process the query...
while ($record = db_fetch_object($query)) {
  $rows[] = array(
    $record->nid,
    $record->type,
    $record->title,
  );
}

// Make the table...
$output = theme('table', $headers, $rows);

// Return the output with the pager attached to it.  The pager 
// is the box underneath the table that allows people to jump 
// to the next page.
return $output . theme('pager', $count);
?>

  • سطر های 6 تا 10 نام ستون های جدول را مشخص خواهند کرد.
  • سطر 19 همان گوئری است که می خواهیم از دستابیس بگیریم، که در اینجا تمامی سطر های موجود در جدول node می باشد.
  • سطر 22 مشخص کننده این است که چه تعداد از سطر های دیتابیس در هر صفحه نمایش داده شود.
  • در سطر 27 با استفاده از تابع pager_query کوئری خود را اجزا می کنید، دقت داشته باشید که دیگر از دستور db_query برای اجرای کوئری استفاده نمی کنیم.
  • در سطر های 30 تا 36 مقدار بازگشتی کوئری را بصورت آرایه ای دو بعدی تبدیل می کنید که دی آن هر عضو بعنوان یک سطر بوده و اعضای داخلی هر عضو ستون های هر سطر را مشخص می کند.
  • در سطر 39 با استفاده از تم جدول دروپال آرایه دو بعدی ایجاد شده و اطلاعات نام ستون ها یک جدول ایجاد می کنیم.
  • در آخر نیز علاوه بر جدول تولید شده، تم صفحه بندی را نیز بر میگردانیم، تم صفحه بندی همان لینک های پایین صفحه را برای چرخش بین صفحات ایجاد می کنید.
  • در سطر 39 با استفاده از تم جدول دروپال آرایه دو بعدی ایجاد شده و اطلاعات نام ستون ها یک جدول ایجاد می کنیم.در سطر 39 با استفاده از تم جدول دروپال آرایه دو بعدی ایجاد شده و اطلاعات نام ستون ها یک جدول ایجاد می کنیم.
  • در آخر نیز علاوه بر جدول تولید شده، تم صفحه بندی را نیز بر میگردانیم، تم صفحه بندی همان لینک های پایین صفحه را برای چرخش بین صفحات ایجاد می کنید.ر آخر نیز علاوه بر جدول تولید شده، تم صفحه بندی را نیز بر میگردانیم، تم صفحه بندی همان لینک های پایین صفحه را برای چرخش بین صفحات ایجاد می کنید.