我知道我可以使用方法 addAttribute() 通过安装脚本添加表单元素。但是,现在我想在常规、显示设置等旁边获得一个全新的选项卡。我想知道在不过度复杂的情况下最简单的方法是什么。
问问题
2377 次
2 回答
3
假设你已经知道如何做模块的其他部分。您需要覆盖:
Mage_Adminhtml_Block_Catalog_Category_Tabs
在您的 config.xml 上,您可以:
<blocks>
<adminhtml>
<rewrite>
<catalog_category_tabs>YouModule_Block_Catalog_Category_Tabs</catalog_category_tabs>
</rewrite>
</adminhtml>
</blocks>
您需要覆盖 _prepareLayout 函数。
您将编写以下代码:
$this->addTab('idname', array(
'label' => Mage::helper('catalog')->__('Tab name'),
'content' => $this->getLayout()->createBlock('yourmodule/yourblock')->toHtml(),
));
return parent::_prepareLayout();
于 2012-12-06T19:53:48.383 回答
2
重写块的另一种方法是监听事件adminhtml_catalog_category_tabs
,然后在你的观察者中做类似的事情。
$tabs = $observer->getTabs();
$tabs->addTab('myextratab', array(
'label' => Mage::helper('catalog')->__('My Extra Tab'),
'content' => 'Here is the contents for my extra tab'
));
这将有助于阻止不同扩展之间可能发生的重写冲突。
于 2014-01-16T21:23:13.087 回答