Получить старую электронную почту в customer_save_before - PullRequest
2 голосов
/ 12 июля 2010

Мне нужно получить старое письмо и сравнить его с новым, используя событие customer_save_before.

Проверить прослушивание события customer_save_before, getData ('email') вернуть новое письмо, а getOrigData ('email') не работает

Проверьте меня тоже с customer_save_after и не работает, getOrigData ('email') возвращает 1, а getData ('email') возвращает новое электронное письмо.

есть ли способ узнать, что это электронное письмочто было изменено?

использование: magento-1.4.0.1

Спасибо

1 Ответ

2 голосов
/ 12 июля 2010

В customer_save_before старые данные все еще должны присутствовать в БД, поэтому вы можете попробовать получить клиента из модели на основе идентификатора:

$old_email = Mage::getModel('customer/customer')->load($customer->getId())->getEmail();

В приведенной выше строке кода предполагается, что вы $ customer - это объект customer, который вы получаете от события.

Если мои рассуждения верны, восстановленные данные клиента должны содержать старый адрес электронной почты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...