我很难为我正在为Magento构建的管理模块设置MVC结构。我希望做的是正确设置design/adminhtml/layout/ppr_extension.xml
来控制页面内容。到目前为止,我正在从IndexController加载phtml和脚本:
$this->loadLayout();
$this->_setActiveMenu('ppr_menu/first_page');
$this->_addContent($this->getLayout()->createBlock('adminhtml/template')->setTemplate('ppr/ppr_1.phtml'));
$loadSimple = $this->getLayout()->getBlock('head')->addJs('ppr/load.simple.js');
$this->_addJs($loadSimple);
$this->renderLayout();
我想从配置xml加载它但由于某种原因我不能得到这个工作。我想它与我的包结构有关但我看不到它!
模板文件存在于design / adminhtml / default / MyPackage / ppr_1.phtml
中我尝试将其添加到代码/ local / MyPackage / PPR / etc / config.xml
<adminhtml>
<menu> ... </menu>
<layout>
<updates>
<ppr_extension>
<file>ppr_extension.xml</file>
</ppr_extension>
</updates>
</layout>
</adminhtml>
扩展xml在design / adminhtml / default / default / layout / ppr_extension.xml
我在这里尝试过很多东西,比如:
<?xml version="1.0"?>
<layout version="0.1.0">
<ppr_adminhtml_ppr_index>
<reference name="head">
<action method="addJs"><script>script.js</script></action>
</reference>
无论我放在那里,似乎都没有发生任何事情。我错过了什么?
我尝试将extension.xml移动到design / adminhtml / MyPackage / layout,但这也没有用。谢谢你的帮助..我脑子疼!“
答案 0 :(得分:4)
现在您使用Commerce Bug会更容易。
调试布局问题的第一步是确保正在加载布局xml文件。转到Commerce Bug中的布局选项卡,然后单击“包布局”链接。在那里寻找您的自定义XML。如果您没有看到这意味着您的XML未加载,那么您应该专注于在config.xml
中获取正确的XML,并将文件放在正确的位置。
另外,请考虑根本没有需要来使用layout xml。管理控制台开发人员将它用于外壳和一些神奇的小部件功能,但是管理员中有很多东西,只是在控制器操作中添加了块,或者在其他块中添加了块。使用PHP生成块对象并不可耻。