I am using a magento multisite setup. There i am having different websites and i want to use the same theme but with a different css/color customization for each one. I tried to create a new folder of style as per explained here . But it is not working.
2 Answers
Explanation
Since 1.9.x you can add dependencies on themes and packages.
Add a etc/theme.xml
and tell which parent you want to use.
<theme>
<parent>rwd/default</parent>
</theme>
This will add a dependency on the rwd/default theme. That being said, brings me to a solution.
Solution
Start creating a package per website, website1
in app/design/frontend/website1/default
Add the etc/theme.xml
(app/design/frontend/website1/default/etc/theme.xml
) and set the parent to your base package like rwd/default
. This way you can still use possibility to use themes per package per website.
Magento will lookup your file as
- app/design/frontend/website1/theme/template/file.phtml
- app/design/frontend/website1/default/template/file.phtml
- app/design/frontend/rwd/default/template/file.phtml
- app/design/frontend/base/default/template/file.phtml
The same goes for your images and css files
- skin/frontend/website1/theme/css/style.css
- skin/frontend/website1/default/css/style.css
- skin/frontend/rwd/default/css/style.css
- skin/frontend/base/default/css/style.css
You can do the same for website2, etcetera.
Final tip
You can also keep your downloaded theme packages clean this way. Download and install the package, create a custom package and add a dependency to the downloaded package. Put your changes in your custom package.
app/design/frontend/custom/default/etc/theme.xml
<theme>
<parent>downloaded/default</parent>
</theme>
Define a master theme in cms > design > package
.
Set default to your new theme-name After that: Create a child-theme for each storeview and define it in
cms > design > themes > standard