如何设置观察员来监控magento中的客户?

时间:2014-01-23 13:55:03

标签: magento

我想要以下内容

1.如果客户已经存在dnt save(0) 2.如果客户是新的,请保存(1) 3.如果客户信息发生变化,则保存更新状态save(2)

其中save是一个函数,

在这种情况下应该是什么事件。

需要解决方案。

我猜 customer_register_success customer_save_after adminhtml_customer_save_after

等。请帮忙

1 个答案:

答案 0 :(得分:0)

如果你检查app / code / core / Mage / Customer / controllers / AccountController.php中第332行的代码行:

if (true === $validationResult) {
    $customer->save();

    Mage::dispatchEvent('customer_register_success',
        array('account_controller' => $this, 'customer' => $customer)
    );

如果在$ customer-> save()之后触发,您将看到customer_register_success,因此在这种情况下观察两者都没有意义。

如果在“global”节点的config.xml中设置观察者,它将观察前端和后端,不需要adminhtml事件:

<global>
    <events>
        <customer_save_after>
            <observers>
            .... your custom code, i assume you know how to deal with it...
            </observers>
        </customer_save_after>
    </events>
</global>