1

我想我已经知道答案了,但可能有一种很好的方法可以重写 Mage_Core_Block_Abstract 类,而无需直接在 magento 框架中进行。

4

1 回答 1

2

您可以在 Magento 中重写类的原因是因为您将要加载的类通过翻译层传递,例如从 翻译core/template到。Mage_Core_Block_Template

抽象类不会通过这一层,因为您直接在代码中引用它们,例如class Mage_Core_Block_Template extends Mage_Core_Block_Abstract {..}.

如果你真的需要重新定义类,那么你需要把它放在加载路径的更高位置,比如在app/code/local文件夹中。不过,我会重新评估您这样做的原因,因为您可能采用了错误的方法,或者可能有更好的方法来实现您想要的结果。

于 2012-05-23T12:14:46.967 回答