我的项目有两个版本。对于一个,我使用不同的CSS和索引页面,对于另一个,我使用不同的CSS和索引页面。控制器,模型和组件的其余部分是相同的。唯一的区别是视图(一个或两个文件)和CSS。
有什么办法可以管理吗? Like when the URL is URL1 then use CSS1/View1 folder and when url is URL@ use CSS2/view2 folder.
我已经浏览了 Yii 的模块部分,但我认为它们不是我在这里需要的。
所以现在我开始使用主题。我的文件夹结构是这样的:
WebRoot
- assests
- css
- images
- protected
- themes
- theme1
-views
-site
-layout
-template
- theme1
-theme2
-views
-site
-layout
-template
在我的控制器中,我已经这样做了:
public function init() {
if (SITE_TITLE == 'xxxxx')
Yii::app()->theme = 'theme1';
else
Yii::app()->theme = 'theme2';
parent::init();
}
正确设置主题。 但是我一直找不到文件,因为渲染器正在受保护中查找。
我认为
,你需要使用主题。以下是文档: http://www.yiiframework.com/doc/guide/1.1/en/topics.theming
讨论
后更新ETwigViewRenderer
和处理主题时遇到麻烦
如果你想改变整个布局,也许这是一个好方法:
在 Yii 中设置布局
如果您只想更改 css,他们为什么不依赖请求 uri 或域名?
Yii::app()->getBaseUrl(true)