Одна из самых удобных и нужных возможностей кейка — готовые классы для рутины, например класс разбиения на страницы (pagination). Про инициализацию и первые шаги можно почитать на основном сайте, а я попробую рассказать о том, чего там нет)
Заданный в начале контроллера массив параметров можно и нужно менять на лету в случае необходимости, например мы можем перед вызовом разбиения добавить еще что-нибудь в него, например еще одну модель.
В условия можно дописывать условия по модели, например порядок внутри связывающей модели Статьи-Разделы. Заметим, что для этого модель статей должна быть связана уже не с моделью категорий, а с «псевдомоделью» статьи-категория, и не как-нибудь, а как «принадлежит-к или один-одни» для срабатывания условий
Использовать базовый хелпер вывода страниц — не обязательно, главное сделать передачу параметра page в роуте и из хелпера вынуть основные значения (количества страниц и тд) — и можно самому делать нужные страницы, например /раздел/1 или /раздел/страница-1 — как вам нравится.