app/code/core/Customer/etc/config.xml
Magentoがアドレスを保存する前後のオブザーバーを登録します。
<events>
<customer_address_save_before>
<observers>
<customer_address_before_save_viv_observer>
<class>customer/observer</class>
<method>beforeAddressSave</method>
</customer_address_before_save_viv_observer>
</observers>
</customer_address_save_before>
<customer_address_save_after>
<observers>
<customer_addres_after_save_viv_observer>
<class>customer/observer</class>
<method>afterAddressSave</method>
</customer_addres_after_save_viv_observer>
</observers>
</customer_address_save_after>
</events>
…しかし、Magentoが実際にこれらのイベントをどこにでもディスパッチしているという証拠は見つかりません。
$ grep -RF 'dispatchEvent(' . | grep -F customer_addres
./app/code/core/Mage/Customer/Model/Address/Abstract.php: Mage::dispatchEvent('customer_address_format', array('type' => $formatType, 'address' => $this));
私が理解しMage::dispatchEvent(…)
ている限り、Magentoがイベントを発生させる唯一の方法です。これらのイベントは実際に発生しますか?(アドレス節約時間で発生するいくつかのイベントを実際に使用できるので、そう願っています。)