Magento – How to using Fall-Back Hierarchy change a file in:

adminhtmlmagento-1.9theme-fallback

How to using Fall-Back Hierarchy, properly modify a file eg: /app/design/adminhtml/default/default/template/login.phtml

My theme is:
Package: Ultimo
Theme: default

I tried save modified file into these:
/app/design/adminhtml/ultimo/default/template/login.phtml
/app/design/adminhtml/delault/ultimo/template/login.phtml

non of these working, what do I do wrong?
Please advise

Best Answer

Background

Magento introduced the base/default theme in CE 1.4 and made this an absolute fallback (independent of configuration). Prior to this the "main" distribution theme was default/default. Developing third-party modules was a big mess before 1.4 because you couldn't know how the user's themes were configured. Since this time one always puts "new" assets in base/default.

However, Magento (for some reason, perhaps due to internal testing tools) never moved the adminhtml theme from default/default which stinks because it means you always have to specify a custom theme for adminhtml in case of changes. This issue is even further complicated by the core distribution of a third-party module with custom theme elements requiring Magento to ship with a custom theme already specified:

<stores>
    <admin>
        <design>
            <theme>
                <default>ultimo</default><!-- or "anna" or whatever -->
            </theme>
        </design>
    </admin>
</stores>

Thankfully this module was removed from core distribution after 1.6.

Answer

For your 1.9 install, assuming it does not have a legacy Find_Feed module, you have a few options in general. For you specifically though you need to see if Ultimo theme is making customizations to the Magento admin theme settings using one of these methods:

  1. You can move the entire adminhtml theme from default/default to base/default (I've tested, it works without a hitch), and then you can place customized files in default/default as they will be picked up without additional configuration. However, this is risky as an upgrade will replace the files under default/default. So, probably don't do this.
  2. You can specify a custom theme via configuration...

    <stores>
        <admin>
            <design>
                <theme>
                    <default>find</default>
                </theme>
            </design>
        </admin>
    </stores>
    

    (Note that this will add a fallback level above default/default, i.e. the system will resolve theme paths first under default/ultimo and then under default/default.)

  3. ...or via the new theme.xml file, amply explained by Alan Storm.

You could also combine 1 & 2. and specify a new package (this would be my approach if the Ultimo theme has customizations and is not setting adminhtml theme or package in some crazy way.

Related Topic