ページネーションのアップグレード
ドキュメント
変更点
新しいページネーションライブラリを使用するには、ビューとコントローラーを変更する必要があります。
ページネーションリンクをカスタマイズする場合は、ビュテンプレートを作成する必要があります。
CI4 では、ページネーションは実際のページ番号のみを使用します。CI3 のデフォルトであるアイテムの開始インデックス (オフセット) は使用できません。
CodeIgnite\Model を使用する場合は、モデルクラスの組み込みメソッドを使用できます。
アップグレードガイド
ビュー内では、以下のように変更します
<?php echo $this->pagination->create_links(); ?>
から<?= $pager->links() ?>
へ
コントローラー内では、以下の変更を行う必要があります
すべてのモデルで組み込みの
paginate()
メソッドを使用できます。特定のモデルでページネーションを設定する方法については、以下のコード例を参照してください。
コード例
CodeIgniter バージョン 3.x
<?php
$this->load->library('pagination');
$config['base_url'] = base_url().'users/index/';
$config['total_rows'] = $this->db->count_all('users');
$config['per_page'] = 10;
$config['uri_segment'] = 3;
$config['attributes'] = array('class' => 'pagination-link');
$this->pagination->initialize($config);
$data['users'] = $this->user_model->get_users(FALSE, $config['per_page'], $offset);
$this->load->view('posts/index', $data);
CodeIgniter バージョン 4.x
<?php
$model = new \App\Models\UserModel();
$data = [
'users' => $model->paginate(10),
'pager' => $model->pager,
];
return view('users/index', $data);