我该如何覆盖Magento中的本地模块?
答
您不会覆盖模块,而是覆盖(或更正确地说rewrite
,请参见下文)属于某个模块的类别,或者属于一般的lib
文件夹。
根据你的措词,我认为你的意思是“从app/code/core/
上课”并将其放入“app/code/local/
”?如果是这种情况,那么你大多不能。代码池可以工作,因为magento向PHP包含路径添加了四条路径。
app/code/local
app/code/community
app/code/core
lib
然后,当自动加载说
include('Mage/Module/Path/To/File.php');
如果将首先检查local
文件夹,然后community
文件夹,则文件夹中的核心,最后lib
文件夹。 local
文件夹总是胜利。
如果你的课程是Model,Helper或Block,我建议使用基于模块的重写系统。用于重写Core模块中的类的相同技术可用于重写本地或社区模块中的类。基于模块的系统的要点是运行核心系统的代码被插入/行为与其他人可能添加到系统中的代码相同。
只需去编辑你实际不需要覆盖本地模块的代码 – 2011-01-28 09:09:40
,但是模块在某些情况下只能被覆盖,并且想知道是否可以覆盖本地代码池中的模块。 – 2011-01-28 09:12:36