
В модели добавляем функции, которые формируют ссылки на предыдущий и следующий пост. У меня выборка по полю сортировки sort. Если вы пишете посты подряд, то делайте проще, выбирайте по id.
public function getNext() { $next = $this->find()->where('course_id=:courseId')->andWhere(['>', 'sort', $this->sort])->addParams([':courseId'=>$this->course_id])->orderBy('sort desc')->one(); if (isset($next)) return Url::toRoute(['/course/view', 'id' => $next->id, 'alias' => $next->alias]); // абсолютный роут вне зависимости от текущего контроллера else return null; } public function getPrev() { if($this->sort == '1') return null; else { $prev = $this->find()->where('course_id=:courseId')->andWhere(['<', 'sort', $this->sort])->addParams([':courseId'=>$this->course_id])->orderBy('sort asc')->one(); if (isset($prev)) { return Url::toRoute(['/course/view', 'id' => $prev->id, 'alias' => $prev->alias]); // абсолютный роут вне зависимости от текущего контроллера } else {return null;} } }
В виде выводим ссылки под текстом статьи. Вот для примера, для предыдущего поста.
<?php if($model->getPrev() != null) { ?> <a href="<?php echo $model->getPrev() ?>"> <i class="fa fa-chevron-left" aria-hidden="true"></i> Предыдущий урок </a> <?php } ?>
18 марта 2017, Программирование, веб-кодинг
16 января 2023

Yii2-user сменить текущего пользователя или переход на другого пользователя (SwitchIdentity)
Impersonate User / Become another user
12 декабря 2022

Yii2: uclead MultipleInput + kartik DepDrop
Настраиваем множественные поля с выпадающим списком