public function actionFeed($type = 'rss') { header('Content-Type: application/rss+xml'); if (Yii::app()->request->getQuery('model') !== null) { $modelClass = 'Model' . ucfirst(Yii::app()->request->getQuery('model')); ContentUnit::loadUnits(); if (!FeedHelper::isFeedPresent($modelClass, Yii::app()->request->getQuery('id') === null)) { throw new CHttpException(404, Yii::t('cms', 'The requested page does not exist.')); } // Фид определенного раздела if (Yii::app()->request->getQuery('id') !== null && ($content = call_user_func(array($modelClass, 'model'))->findByPk(intval(Yii::app()->request->getQuery('id'))))) { FeedHelper::renderFeed($type, $content); // Фид всех записей этого типа } else { FeedHelper::renderFeed($type, $modelClass); } // Общий фид } else { FeedHelper::renderFeed($type); } }