5

我正在尝试将信息从我的 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 部分。我似乎无法找到它失败的地方。

谢谢您的帮助!

4

0 回答 0