我想更改一些 Magento 核心文件。为了确保这些更改是面向 future 的,我将文件从 code/core/Mage 复制到 code/local/Mage。
我保持文件结构和文件名一致。问题是当我这样做时,更改没有效果(我已经刷新了缓存)
有什么想法我哪里出错了吗?如果我直接编辑核心文件,则会发生更改。
最佳答案
您应该创建一个新的本地模块并在 config.xml 文件中定义重写:
创建app/code/local/MyCompany/MyModule
目录。添加子文件夹 etc
和 model
。
现在创建 etc/config.xml
文件,其中包含:
<?xml version="1.0" encoding="utf-8?>
<config>
<modules>
<MyCompany_MyModule>
<version>0.1.0</version>
</MyCompany_MyModule>
</modules>
<global>
<models> <!-- type of class to rewrite -->
<catalog> <!-- base module to rewrite -->
<rewrite>
<product>MyCompany_MyModule_Model_Product</product>
</rewrite>
</catalog>
</models>
</global>
</config>
使用您的更改实现model/Product.php
。最简单的方法是继承基类并重写方法。
还记得在 app/etc/modules 中激活您的模块。
关于Magento - 将文件添加到本地/Mage 没有效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3343272/