覆盖多个模块中的magento块(以及如何忽略其他模块)

Uwe*_*cke 7 php customization magento

在Magento中,您可以从另一个模块(最常见的是Magento Adminhtml模块)中覆盖一个块(或帮助器或模型等).现在我遇到的问题是我想要覆盖已经被其他扩展覆盖的块.有没有办法告诉magento忽略<rewrite>其他一些模块配置中的<remove>标签,类似于布局更新中的标签?

以下是其他扩展的配置:

    <blocks>
        <adminhtml>
            <rewrite>
                    <catalog_product_grid>Symmetrics_DeliveryTime_Block_Adminhtml_Catalog_Product_Grid</catalog_product_grid>
            </rewrite>
        </adminhtml>
    </blocks>
Run Code Online (Sandbox Code Playgroud)

这是我的扩展的配置:

    <blocks>
        <adminhtml>
            <rewrite>
                    <catalog_product_grid>Namespace_MyModule_Block_Adminhtml_Catalog_Product_Grid</catalog_product_grid>
            </rewrite>
        </adminhtml>
    </blocks>
Run Code Online (Sandbox Code Playgroud)

我将块的功能集成Symmetrics_DeliveryTime到我自己的块中,现在我希望magento忽略来自该模块的块覆盖.

是否有任何magento方法可以做到这一点,或者是注释配置的唯一方法(这是我现在所做的),包括以后更新该模块时的所有麻烦?

Gre*_*reg 9

如果你将模块设置为"依赖"那个也正在进行重写的模块,你的配置将被最后读取并且重写应该坚持,在app/etc/modules中的相应文件中你应该:

<config>
  <modules>
    <Your_Module>
      <active>true</active>
      <codePool>local</codePool>
      <depends>
        <Other_Module/>
      </depends>
    </Your_Module>
  <modules>
<config>
Run Code Online (Sandbox Code Playgroud)