public function actionIndex() { $query = Article::find()->from(['t' => Article::tableName()])->joinWith(['category', 'titleImage'])->andWhere(['t.published' => 1])->groupBy('id')->orderBy('position DESC, date DESC'); $dataProvider = new ActiveDataProvider(['query' => $query, 'pagination' => ['pageSize' => Article::PAGE_SIZE, 'pageSizeParam' => false]]); PageSeo::registerSeo(PageSeo::ID_HOME_PAGE); return $this->render('../modules/article/views/default/index', ['dataProvider' => $dataProvider]); }
/** * @param $categoryModel ArticleCategory|null * @return string */ public function commonAction($categoryModel = null) { $query = Article::find()->from(['t' => Article::tableName()])->joinWith(['category', 'titleImage'])->andWhere(['t.published' => 1])->groupBy('id')->orderBy('position DESC, date DESC'); if ($categoryModel) { $query->andWhere(['category_id' => $categoryModel->id]); MetaTagRegister::register($categoryModel); $categoryLabel = $categoryModel->label; } else { PageSeo::registerSeo(PageSeo::ID_HOME_PAGE); $categoryLabel = \Yii::t('app', 'All articles'); } $dataProvider = new ActiveDataProvider(['query' => $query, 'pagination' => ['pageSize' => Article::PAGE_SIZE, 'pageSizeParam' => false]]); if (\Yii::$app->request->isAjax) { return $this->renderAjax('index', ['dataProvider' => $dataProvider, 'categoryLabel' => $categoryLabel]); } return $this->render('index', ['dataProvider' => $dataProvider, 'categoryLabel' => $categoryLabel]); }