我正在为Magento 1.7编写扩展程序,我需要覆盖第三方扩展程序中的帮助程序。
我的config.xml
SELECT
a.Type,
CASE
WHEN (SELECT Count(*)
FROM Table
WHERE a.fruit=fruit
AND a.name=name
AND a.condition=condition) > 1 THEN 'Duplicate'
WHEN a.Name ='' THEN 'Blank'
ELSE a.Name
END as Name,
FROM Table a;
第三方扩展程序config.cml的部分内容
<config>
<modules>
<Mkpreis_Ebay>
<version>0.0.1</version>
</Mkpreis_Ebay>
</modules>
<global>
<helpers>
<ebay>
<class>Mkpreis_Ebay_Helper</class>
</ebay>
<M2ePro>
<rewrite>
<module_renderer_description>Mkpreis_Ebay_Helper_Module_Renderer_Description</module_renderer_description>
</rewrite>
</M2ePro>
</helpers>
</global>
</config>
Mkpreis_Ebay.xml的内容
...
<modules>
<Ess_M2ePro>
<version>6.2.2</version>
</Ess_M2ePro>
</modules>
...
<global>
...
<helpers>
<M2ePro>
<class>Ess_M2ePro_Helper</class>
</M2ePro>
</helpers>
</global>
...
文件夹结构
<?xml version="1.0"?>
<config>
<modules>
<Mkpreis_Ebay>
<active>true</active>
<codePool>local</codePool>
<depends>
<Ess_M2ePro/>
</depends>
</Mkpreis_Ebay>
</modules>
</config>
我唯一的问题是它不会覆盖班级!我的扩展程序已被识别且已激活如果我把smt放在我的Data.php中,那么代码就会被执行并且正在运行 - 该类不会被覆盖。
答案 0 :(得分:2)
你所写的内容看起来是正确的......或许是其他重写的东西?使用die(get_class($ this))将_construct()方法添加到Ess_M2ePro_Helper_Module_Renderer_Description中;并查看类名是什么。如果它是其他东西,你还有更多的工作要做(如果需要,我可以提供帮助),否则如果它是Ess_M2ePro_Helper_Module_Renderer_Description,那么我会仔细检查你的所有文件名,配置等是否存在大写/小写错误。