Magento:从Success Page中删除右侧边栏

时间:2015-09-09 15:36:35

标签: php xml magento

我试图从成功页面中删除右侧边栏,但现在我不知道该怎么做。

到现在为止我已经改变了

应用程序/设计/前端/默认/主题/布局/ checkout.xml 应用程序/设计/前端/碱/默认/布局/ checkout.xml

向他们添加此代码

<checkout_onepage_success translate="label">
    <label>One Page Checkout Success</label>
    <reference name="root">
        <action method="setTemplate"><template>page/1column.phtml</template></action>
    </reference>
    <reference name="content">
        <block type="checkout/onepage_success" name="checkout.success" template="checkout/success.phtml"/>
    </reference>
</checkout_onepage_success>

我已经清除了所有缓存但仍然没有改变,我做错了什么?

1 个答案:

答案 0 :(得分:0)

更改根页面模板的正确方法是在主题中创建一个local.xml,其中包含以下内容:

<layout version="0.1.0">
    <checkout_onepage_success>
        <update handle="page_one_column" />
    </checkout_onepage_success>
</layout>

根块中的孤立setTemplate不会更新模板,因为它需要page.xml中的其他操作,例如1。

如果您想深入了解原因,请查看以下代码到Mage_Page_Helper_Layout

if ($this->getLayout()->getBlock('root') &&
    !$this->getLayout()->getBlock('root')->getIsHandle()) {
        // If not applied handle
        $this->getLayout()
            ->getBlock('root')
            ->setTemplate($pageLayout->getTemplate());
}

祝你好运