0

I am working on Mangento (1.9) website and the site uses a custom theme which is applied throughout all the pages. I didn't build the theme, the previous team who worked built the theme and the blog pages also used that theme and it worked fine until a few days ago.

The pages on the website uses the custom theme, though the blog is using a default theme (looks like web 2.0) that Magento provides (not sure as I am new with Magento, but it seems like it)

I did make some changes to the various XML files to add a few blocks but didn't change anything else in files like pages.xml.

The configuration of the blog seems to be alright on the admin panel

enter image description here

It took me a lot of effort itself to find how to edit the layout, and I've been searching about editing the configurations for which theme Blog should use but no results till now.

Any idea why it might be happening? I am very new to Magento so I am not sure where to look at.

  • Your issue is juste to change the layout ? if you change the Page Layout config nothing happen ? the blog use well your custom theme you haven't problem with this right ? – PЯINCƏ Jan 10 '18 at 14:48
  • Changing the page layout in the config. does some changes on the actual blog page, but the theme that is being used isn't the one on the main website (which is a custom theme package we are using throughout the site). – Deepak Kamat Jan 10 '18 at 14:50
  • So you want to apply this custom theme used in the website in the blog right ? – PЯINCƏ Jan 10 '18 at 14:54
  • Yup. A few days earlier it did apply the custom theme, but after I made some changes to pages.xml, layout.xml (I don't even remember which other files, thanks to the big set of files) I later found out the Blog didn't apply the custom theme like it did before. – Deepak Kamat Jan 10 '18 at 14:56
  • 1
    Look my answer please – PЯINCƏ Jan 10 '18 at 15:20
0

Logically in Magento when you set a theme in admin >design, Magento apply it for all pages, even if you dont put the file in the theme files, Magento go to get it from default then base as Magento fallback system.

Now if you you have set some config or updates by mistakes, the only way that I know is to set the theme manually in xml, you can also set it in controller.

Solution:

XML:

Try to put the code bellow in : app/design/frontend/{your package}/{your theme}/layout/local.xml

<your_layout_handle>// try this <blog_index_index>
    <reference name="root">
        <action method="setTheme">
            <theme>your-theme</theme>
        </action> 
    </reference>
</your_layout_handle>

CONTROLLER:

you can also set it in controller:

protected function _construct(){
   parent::_construct();
   Mage::getDesign()->setArea('frontend')
        ->setPackageName('packagename')
        ->setTheme('your-theme');
}
  • Thanks for the detailed answer, I do have a good feeling this will help me. Only problem is there isn't any layout.xml in that folder. There is however page.xml which I think substitutes layout.xml file here. Is that true? – Deepak Kamat Jan 10 '18 at 15:22
  • To do it properly, you do it in local.xml as my path, now if you tel me that the page.xml do a job for you put it on it ;) – PЯINCƏ Jan 10 '18 at 15:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.