А в чем сложность ? создаете датапровайдер, делаете запрос с сортировкой по дате. Указываете какое кол-во строчек в лист вью вам нужно и после скольки создавать пагинацию
$someQuery = Category::find()->where(['status' => Coupon::STATUS_NEW])->orderby('create_at');
$yourSomeProvide r= new ActiveDataProvider([
'query' => $someQuery,
'pagination' => [
'pageSize' => 8, // сколько объектов на стр.
],
]);
Далее, если orderBy вам мало, можно сделать Sort
$sort = new Sort([
'attributes' => [
'created_at' => [
'asc' => ['created_at' => SORT_ASC],
'desc' => ['created_at' => SORT_DESC],
'default' => SORT_DESC,
'label' => 'новизне',
],
],
]);
Отправка из контроллера на вьюшку, где у вас лист вью. честно не помню, каким образом работает лист вью с массивами или объектами. Но по идее должно работать.
return $this->render('index', [
'yourSomeProvider' => $yourSomeProvider,
'sort' => $sort,
]);