Magento:如何覆盖视图模板

时间:2011-05-25 15:31:42

标签: php magento

我想显示带有自定义主题的订单发票页面,但我不想重写与之关联的所有应用代码(块,帮助器等)。从用户的角度来看,它应该如何工作:

  • 用户转到自定义“订单历史记录”页面,其网址为“../ custom-account / orders /".
  • 他们点击订单历史记录列表中的“查看发票”链接,将其带到“../ custom-account / orders / invoices / order_id / 1”。
  • 该页面加载的自定义视图与“../sales/account/view/order_id/1”的内容几乎完全相同 - 但具有不同的外观(和导航)。

凭借Magento系统的灵活性,这似乎应该很容易实现,但我无法弄明白我需要做什么。我真的不想覆盖所有具有完全相同功能的各种块和模型,只是为了获得不同的UI。

有什么想法吗?

感谢您提供的任何帮助......

1 个答案:

答案 0 :(得分:3)

我不知道你是否已经弄清楚了这一点。但希望这个解决方案有所帮助。 就像你说你使用fontend / default / default / templates,你需要创建一个与base / default / template&相同结构的文件夹。将您要重写的文件复制粘贴到此文件夹中。做你想做的改变。 Magento应该读取此文件而不是base / default / tmeplate

但如果您使用主题已尝试在您的app / design / frontend / default //模板中执行此操作

如果你有2-col-left&的布局问题2-COL-权。然后我建议在你的frontend / default / default / layout / sales.xml中检查它 检查标签 那么你需要写这段代码

<reference name="root">
                 <action method="setTemplate"><template>page/<layout_file_name>.phtml</template></action>
</reference>

理想情况下,这应该在2-col-left布局上运行。

希望这会有所帮助&amp;如果我帮助你,请告诉我

:) SAM