Shopware事件订阅者和未知参数

时间:2017-10-23 17:39:09

标签: shopware

我正在尝试订阅Shopware中的一些插件事件 - 最重要的是“客户更新”(或新客户)。

我能够成功捕获事件:

// Customer (user) update
$this->subscribeEvent(
'Shopware\Models\Customer\Customer::postUpdate',
'onTriggerCustomer'
);

在我的“onTriggerCustomer”功能中:

public function onTriggerCustomer(Enlight_Hook_HookArgs $arguments)
{
// Do something
$subject = $arguments->getSubject();
// log this, Logger is a logging function..
$this->Logger($subject);
}

我尝试过无穷无尽的尝试来获取$ arguments的内容,但没有运气,我真正需要的只是customerID。

试图找出可用参数的任何帮助都会很棒吗?

getId();
get('id');
var_export(anything, true);

一切都只返回null / nothing ..

1 个答案:

答案 0 :(得分:1)

根据您的代码段,您可以获得以下客户ID:

$this->subscribeEvent(
    'Shopware\Models\Customer\Customer::postUpdate',
    'postUpdateCustomer'
);
....
public function postUpdateCustomer(Enlight_Event_EventArgs $arguments) {
    $customer = $arguments->get('entity');
    $customerId = $customer->getId();
}