Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

magento create own package or use default

The main reason I like creating a fresh package is that it allows you to keep a clean separation between your store themes and the default bundled Magento themes. On the other hand most extensions install layout and template files to app/design/frontend/default/default/ and if your theme is installed under the default package magento will find the extensions frontend files or else you'll have to copy extension files to app/design/frontend/package/default/ always. So it's a little more work using your own package.

I'm curious to see if I'm missing anything else so what are some of the benefits of creating your own theme package in Magento as opposed to using the default package?

like image 520
ringerce Avatar asked Dec 12 '22 21:12

ringerce


2 Answers

First of all, creating a new package is something that Magento Official user guide is required to do.

http://info.magento.com/rs/magentocommerce/images/MagentoDesignGuide.pdf

Here is what it says: "Please ignore legacy Magento instructions and tutorials that instruct you to create your custom theme inside of the default design package, or to edit files in the default/default directory directly. Rather, the method that affords the best upgrade path for your theme and the most protection from accidental changes is to create a new design package and to create your custom theme inside of there."

My personal logic for creating a new package is if Magento requires few store views and they have differences, I need to have my own 'default' theme and that's exactly what I get by creating my own package (Magento will look for files in the my_theme theme in custom design package, then in the default theme and then fallback to the base package)

like image 146
Sergei Guk Avatar answered Dec 16 '22 07:12

Sergei Guk


If you use default/default, and third-party extensions you use place their files in default/default, then you can't override those files - you have to edit them directly.

So, by

  1. fixing the third-party extension in a vendor/upstream branch
  2. using your own package

you can override only the templates/layouts you need in your package.

like image 44
xyphoid Avatar answered Dec 16 '22 06:12

xyphoid