我正在尝试扩展社区插件,对我来说一切看起来都是正确的,但我一定错过了一些东西,因为我的方法没有覆盖社区插件方法。
奇怪的是,我下载了模块冲突检测器,它说这是我的插件正在很好地扩展社区插件。
应用程序/等/模块/KNG_M2eProMods.xml
<?xml version="1.0"?>
<config>
<modules>
<KNG_M2eProMods>
<active>true</active>
<codePool>local</codePool>
<depends>
<Ess_M2ePro/>
</depends>
</KNG_M2eProMods>
</modules>
</config>
app/code/local/KNG/M2eProMods/etc/config.xml
<?xml version="1.0"?>
<config>
<modules>
<KNG_M2eProMods>
<version>0.1.0</version>
</KNG_M2eProMods>
</modules>
<global>
<models>
<M2ePro>
<rewrite>
<magento_payment>KNG_M2eProMods_Model_Magento_Payment</magento_payment>
<magento_quote>KNG_M2eProMods_Model_Magento_Quote</magento_quote>
<magento_order>KNG_M2eProMods_Model_Magento_Order</magento_order>
</rewrite>
</M2ePro>
</models>
</global>
</config>
app/code/local/KNG/M2eProMods/Model/Magento/Order.php
class KNG_M2eProMods_Model_Magento_Order extends Ess_M2ePro_Model_Magento_Order
{
private function placeOrder()
{
......
}
}
app/code/local/KNG/M2eProMods/Model/Magento/Payment.php
class KNG_M2eProMods_Model_Magento_Payment extends Ess_M2ePro_Model_Magento_Payment
{
protected $_code = 'payment_profile';
}
app/code/local/KNG/M2eProMods/Model/Magento/Quote.php
class KNG_M2eProMods_Model_Magento_Quote extends Ess_M2ePro_Model_Magento_Quote
{
private function initializeQuoteItems()
{
......
}
}
这是我尝试扩展的插件的配置.xml片段。app/code/community/Ess/M2ePro/etc/config.xml
......
<models>
<M2ePro>
<class>Ess_M2ePro_Model</class>
......
</M2ePro>
......
</models>
......
以下是我要扩展的文件路径。
app/code/community/Ess/M2ePro/Model/Magento/Order.php
app/code/community/Ess/M2ePro/Model/Magento/Payment.php
app/code/community/Ess/M2ePro/Model/Magento/Quote.php
感谢您的帮助
您的配置.xml设置不正确。Magento在读取xml文件时区分大小写。所以你的配置.xml文件应该是这样的,
<?xml version="1.0"?>
<config>
<modules>
<KNG_M2eProMods>
<version>0.1.0</version>
</KNG_M2eProMods>
</modules>
<global>
<models>
<m2epromods>
<class>KNG_M2eProMods_Model</class>
<resourceModel>m2epromods_mysql4</resourceModel>
</m2epromods>
<m2epro>
<rewrite>
<magento_order>KNG_M2eProMods_Model_M2ePro_Magento_Order</magento_order>
</rewrite>
</m2epro>
<m2epro>
<rewrite>
<magento_payment>KNG_M2eProMods_Model_M2ePro_Magento_Payment</magento_payment>
</rewrite>
</m2epro>
<m2epro>
<rewrite>
<magento_quote>KNG_M2eProMods_Model_M2ePro_Magento_Quote</magento_quote>
</rewrite>
</m2epro>
</models>
</global>
</config>
如果您有任何疑问,请在此处发表评论。