我花了數小時試圖覆蓋Magento塊的擴展中的「添加商店」和「編輯商店」頁面,以添加另一個文本框。在瀏覽書籍和谷歌搜索之後,我發現了幾種人們說的解決方案,但不適合我。Magento - 覆蓋Adminhtml塊
一個建議是this one。
我已經複製了Lee Saferite的原本正確的解決方案,該解決方案適用於原始海報,但不適合我。當然,我將這些值更改爲我重寫的類和新的修改後的類。
我config.xml文件(相關部分):
<global>
<blocks>
<adminhtml>
<rewrite>
<system_store_sdit_form>Nintera_General_Block_StoreEdit</system_store_sdit_form>
</rewrite>
</adminhtml>
</blocks>
<resources></resources>
<helpers>
<Nintera_General>
<class>Nintera_General_Helper</class>
</Nintera_General>
</helpers>
</global>
而且位於Nintera /一般/座/ StoreEdit.php塊類:
class Nintera_General_Block_StoreEdit extends Mage_Adminhtml_Block_System_Store_Edit_Form
{
/**
* Prepare form data
*
* return Mage_Adminhtml_Block_Widget_Form
*/
protected function _prepareForm()
{ ... }
}
這個類包含了新的輸入域。該字段顯示了完美的,如果我修改原始核心文件在:
應用程序/核心/法師/ Adminhtml /模塊/系統/存儲/ Edit.php
但我真的希望我的擴展覆蓋它。如果有必要,我可以發佈我的整個config.xml,但它主要是創建頂級管理菜單並指定擴展信息,而不是其他。
有什麼錯誤的想法嗎?高度讚賞解決方案!