public function beforeRender(ViewEvent $event) { if (Yii::$app->request->isAjax && !Yii::$app->request->isPjax) { return; } if (Yii::$app->controller->module->id == 'seoToolbar') { return; } $url = Yii::$app->request->url; if (!isset(self::$_seoPage)) { self::$_seoPage = Page::findByUrl($url); } if (self::$_seoPage) { $params = $event->params; foreach ($params as $key => $param) { if ($param instanceof Model && $param->hasMethod('getSeoPrefix')) { self::$_seoPage->addModel($param, $key); } } } if (Yii::$app->getModule('seoToolbar')->checkAccess(Yii::$app)) { if (self::$_seoPage) { Yii::$app->session->set('seoAttributes:' . $url, self::$_seoPage->getReplaceData()); } } }