我正在尝试将信息从我的 magento 安装发送到 dropshipper。这显然应该在付款完成后立即发生。据我所知,Magento 有观察者,付款完成后应该被解雇。
我有以下文件,但观察者似乎从未被解雇:app/etc/modules/SPB_Coreextended.xml:
<?xml version="1.0"?>
<config>
<modules>
<SPB_Coreextended>
<active>true</active>
<codePool>local</codePool>
</SPB_Coreextended>
</modules>
</config>
应用程序/代码/本地/SPB/Coreextend/etc/config.xml:
<?xml version="1.0"?>
<config>
<modules>
<SPB_Coreextended>
<version>0.2.0</version>
</SPB_Coreextended>
</modules>
<frontend>
<routers>
<checkout>
<args>
<modules>
<SPB_Coreextended before="Mage_Checkout">SPB_Coreextended_Checkout</SPB_Coreextended>
</modules>
</args>
</checkout>
</routers>
</frontend>
<global>
<models>
<SPB_Coreextended>
<class>SPB_Coreextended_Model</class>
</SPB_Coreextended>
</models>
<events>
<sales_order_payment_pay>
<observers>
<SPB_Coreextended>
<type>singleton</type>
<class>SPB_Coreextended/Observer</class>
<method>sendOrder</method>
</SPB_Coreextended>
</observers>
</sales_order_payment_pay>
</events>
</global>
</config>
应用程序/代码/本地/SPB/Coreextend/Model/Observer.php:
<?php
class SPB_Coreextended_Model_Observer
{
public function sendOrder($observer) {
Mage::log("New order");
$order = $observer->getInvoice()->getOrder(); // Mage_Sales_Model_Order
Mage::log("New order");
}
}
?>
如您所见,我还从 config.xml 调用了另一个方法,该方法确实有效。所以我很确定问题出在我的观察者的 config.xml 部分。我似乎无法找到它失败的地方。
谢谢您的帮助!