CodeIgniter, руководство пользователя к версии 1.6.1


Класс Pagination

Класс Pagination очень прост в использовании, и на 100% настраиваемый, динамически или посредством сохраненных настроек.

Если Вы не знакомы с термином "pagination" (нумерация страниц, разбивка на страницы), то это набор ссылок позволяющих перемещаться по страницам, например:

« В начало  1  2  3  4  5  В конец »

Пример

На этом примере показывается, как можно создать нумерацию страниц в одном из ваших контроллеров:

$this->load->library('pagination');

$config['base_url'] = 'http://www.your-site.com/index.php/test/page/';
$config['total_rows'] = '200';
$config['per_page'] = '20';

$this->pagination->initialize($config);

echo $this->pagination->create_links();

Примечание:

Массив $config содержит конфигурационные переменные. Он передается в функцию $this->pagination->initialize, как показано выше. Хотя массив имеет двенадцать опций, для работы класса необходимо задать минимум три:

Функция create_links() вернет пустую строку, когда не будет необходимости показывать нумерацию.

Настройка параметров в файле конфигурации

Если вас не устраивает предыдущий метод, то вы можете поместить все настройки в конфигурационный файл. Для этого необходимо создать файл с именем pagination.php и определить внутри массив $config. Далее сохраните файл в каталоге config/pagination.php и он будет загружаться автоматически. Теперь вам НЕ надо писать $this->pagination->initialize.

Настройка нумерации страниц

Ниже перечислен полный список параметров, которые вы можете передать в функцию инициализации.

$config['uri_segment'] = 3;

Функция нумерации страниц автоматически определяет, какой сегмент URI содержит номер страницы. Если Вам необходимо явно указать сегмент, можно задать его этим параметром.

$config['num_links'] = 2;

Количество ссылок, которое будет перед и после номера выбранной страницы. Например, при указании этого параметра равным 2, будет по два числа с каждой стороны, как в примере выше.

Добавление элементов разметки

Если вы хотите заключить блок нумерации страниц в другой элемент разметки, то можете сделать это с помощью следующих двух параметров:

$config['full_tag_open'] = '<p>';

Открывающий тег.

$config['full_tag_close'] = '</p>';

Закрывающий тег.

Настройка ссылки, указывающей на первую страницу

$config['first_link'] = 'В начало';

С помошью этого параметра задается текст ссылки, указывающей на первую страницу. Например, "На первую страницу".

$config['first_tag_open'] = '<div>';

Открывающий тег.

$config['first_tag_close'] = '</div>';

Закрывающий тег.

Настройка ссылки, указывающей на последнюю страницу

$config['last_link'] = 'Last';

С помошью этого параметра задается текст ссылки, указывающей на последнюю страницу. Например, "На последнюю страницу".

$config['last_tag_open'] = '<div>';

Открывающий тег.

$config['last_tag_close'] = '</div>';

Закрывающий тег.

Настройка ссылки, указывающей на следующую страницу

$config['next_link'] = 'Далее';

С помошью этого параметра задается текст ссылки, указывающей на следующую страницу. Например, "Далее".

$config['next_tag_open'] = '<div>';

Открывающий тег.

$config['next_tag_close'] = '</div>';

Закрывающий тег.

Настройка ссылки, указывающей на предыдущую страницу

$config['prev_link'] = 'Назад';

С помошью этого параметра задается текст ссылки, указывающей на предыдущую страницу. Например, "Назад".

$config['prev_tag_open'] = '<div>';

Открывающий тег.

$config['prev_tag_close'] = '</div>';

Закрывающий тег.

Настройка ссылки, указывающей на текущую страницу

$config['cur_tag_open'] = '<b>';

Открывающий тег.

$config['cur_tag_close'] = '</b>';

Закрывающий тег.

Настройка числовых ссылок

$config['num_tag_open'] = '<div>';

Открывающий тег.

$config['num_tag_close'] = '</div>';

Закрывающий тег.