我想正确覆盖此管理模板文件app/design/adminhtml/default/default/template/sales/order/create/form/address.phtml
根据我的found,正确的方法是在新模块中创建布局文件,在模块目录中设置模板路径并使用引用节点引用该模板文件。但我不知道该怎么做。
到目前为止,我不明白如何使用xml控制布局。有人可以说明如何实际做到这一点吗?
答案 0 :(得分:2)
您应该创建自己的模块,然后可以创建新模板。
如果你想强迫,你需要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中找到该块,然后您可以扩展Block并指定一个新模板。
我就是这样做的,但我也很难在管理HTML模块中覆盖它。