我试图覆盖Magento的管理区域内的phtml文件。具体来说,我试图重写文件是:应用程序/设计/ adminhtml /默认/缺省的/模板/目录/表格/渲染/字段集/ element.phtmlMagento:覆盖Adminhtml模板导致内存限制耗尽
在应用程序/代码/本地/公司名称/Website/etc/config.xml,我有:
<rewrite>
<catalog_form_renderer_fieldset_element>CompanyName_Website_Block_Adminhtml_Catalog_Form_Renderer_Fieldset_Element</catalog_form_renderer_fieldset_element>
</rewrite>
我已经放入应用程序/代码的首要块PHP文件/本地/公司名称/网站/座/ Adminhtml /目录/表格/渲染/ Fieldset/Element.php。该文件包含:
<?php
class CompanyName_Website_Block_Adminhtml_Catalog_Form_Renderer_Fieldset_Element extends Mage_Adminhtml_Block_Widget_Form_Renderer_Fieldset_Element
{
public function _construct()
{
parent::_construct();
$this->setTemplate('catalog/form/renderer/fieldset/element.phtml');
}
}
最后,最重要的模板文件是在应用程序/设计/前端/企业/公司名称/模板/目录/表格/渲染/字段集/ element.phtml,包含实际的模板我压倒一切。
我得到一个白色的屏幕,并在日志中有这样的错误:Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 227543041 bytes) in /var/www/html/gold/lib/Varien/Object.php on line 569
有什么想法?我是否正在扩展正确的课程?文件放置正确吗?等等。在同一个config.xml文件里还有其他的<rewrite>
块,它工作得很好,所以我一定犯了一个错误!
谢谢。
这是我的理解是,你不能简单地覆盖adminhtml模板,你必须创建一个模块来做到这一点。这是不正确的?在Google上搜索“magento override adminhtml模板”会产生非常不一致的结果,其中没有一个是明确的。甚至还有这样令人费解,似乎方法,通过Inchoo,[这里](http://inchoo.net/ecommerce/magento/how-to-override-magento-admin-view-template-files-quick-and-dirty-way/ )。 有没有更简单的方法? – WackGet
你当然可以! (至少是我在...的版本)我会更新我的答案。 –
谢谢!这确实有效(尽管我将''更改为'')。有什么办法可以使它成为“真正的模块化”:即编辑模块文件夹本身中的/etc/config.xml文件,而不是全局应用程序/ etc/config.xml文件? – WackGet