我想正确地覆盖这个管理模板文件app/design/adminhtml/default/default/template/sales/order/create/form/address.phtml
根据我的发现,正确的方法是在新模块中创建一个布局文件,在我的模块目录中设置模板路径并使用引用节点引用该模板文件。但我不知道该怎么做。
到目前为止,我不明白如何使用 xml 控制布局。有人可以展示如何实际做到这一点吗?
您应该真正创建自己的模块,然后您可以创建一个新模板。
如果你想强制,你需要setTemplate()
将你的 phtml 路径作为参数。$this->getLayout()->createBlock('my_module/blockname')->setTemplate('my_module/template.phtml');
请记住,这里的两个斜线符号是不同的。
createBlock()
是一个街区,所以会在/app/code/<codePool>/My/Module/Blocks/<blockname.php>
setTemplate()
用于模板,因此将在/app/design/<area>/default/default/template/template.phtml
<area>
当您在管理后端时,您将是 /adminhtml。
为了使模板正常工作,您需要创建一个新模块并扩展使用此模板的 adminhtml 块文件。您必须从 layout.xml 中找到该块,然后您可以扩展该块并指定一个新模板。
我就是这样做的,但我也发现很难覆盖 Adminhtml 模块中的内容。