Php Magento:从成功页面删除右侧边栏
我正试图从成功页面中删除右边的边栏,但现在我不知道怎么做 直到现在我都变了 app/design/frontend/default/theme/layout/checkout.xml app/design/frontend/base/default/layout/checkout.xml 向它们添加此代码Php Magento:从成功页面删除右侧边栏,php,xml,magento,Php,Xml,Magento,我正试图从成功页面中删除右边的边栏,但现在我不知道怎么做 直到现在我都变了 app/design/frontend/default/theme/layout/checkout.xml app/design/frontend/base/default/layout/checkout.xml 向它们添加此代码 <checkout_onepage_success translate="label"> <label>One Page Checkout Success<
<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页column.phtml
我已经清除了所有缓存,但仍然没有任何更改,我做错了什么?首先确保您的成功页面使用相同的布局句柄。为此,请在成功页面模板上添加以下代码,并检查应用的句柄
echo '<pre>';
print_r($this->getLayout()->getUpdate()->getHandles());
echo '</pre>';
更改根页面模板的正确方法是使用以下内容在主题内创建local.xml:
if ($this->getLayout()->getBlock('root') &&
!$this->getLayout()->getBlock('root')->getIsHandle()) {
// If not applied handle
$this->getLayout()
->getBlock('root')
->setTemplate($pageLayout->getTemplate());
}
致以最诚挚的问候如果您知道要删除的边栏块的名称,您可以始终执行
我是否可以仅在成功页面中删除它?如果是这样的话,我该怎么做呢?我相信如果你像@Karl写的那样用手柄将它包装在
标签中,它应该是这样工作的。请检查一下这个问答网站,它应该会用铃铛和口哨来回答这个问题:-。仅供参考:到目前为止,您发布的代码没有显示您试图删除它的位置。那么,您是否真的在寻找记录其工作原理的文档?嗨,hakre,谢谢您的回复。我已经检查了magento.stack。。。但我觉得这对解决我的问题没有帮助,我也不想恢复以前的帖子。(请告诉我我哪里做错了,这样我以后就不会再做了)
<layout version="0.1.0">
<checkout_onepage_success>
<update handle="page_one_column" />
</checkout_onepage_success>
</layout>
if ($this->getLayout()->getBlock('root') &&
!$this->getLayout()->getBlock('root')->getIsHandle()) {
// If not applied handle
$this->getLayout()
->getBlock('root')
->setTemplate($pageLayout->getTemplate());
}