/** * @param PageModel $page * @param int $articleId * * @return ArticleModel[] */ private function findArticlesForPage(PageModel $page, $articleId) { $articles = ArticleModel::findBy(['tl_article.pid=?', 'tl_article.id!=?', '(tl_article.id=? OR tl_article.languageMain=? OR tl_article.inColumn=?)'], [$page->id, $this->currentArticle->id, $articleId, $articleId, $this->currentArticle->inColumn, $articleId, $articleId], ['order' => 'tl_article.id=? DESC, tl_article.languageMain=? DESC']); if (!$articles instanceof Collection) { return []; } /** @var ArticleModel[] $models */ $models = $articles->getModels(); if ($articleId > 0 && ($models[0]->id == $articleId || $models[0]->languageMain == $articleId)) { return [$models[0]]; } return $models; }