本番マシンで結果を複製するために、ローカルマシンにデフォルトの「変更なし」の magento コピーをセットアップしました。
モジュールで「adminhtml_customer_save_after」イベントをキャッチしようとすると、常に customer_save_before で停止します。これは、customer_save_after タイプのイベントにも当てはまります。
追加する
file_put_contents('/tmp/events.log','Dispatching '. $name. "\n",FILE_APPEND);
/var/www/app/Mage.php の dispatchEvent 関数に対して、実際に customer_save_before に戻ることを確認しますが、それは私が求めているイベントではありません。
これを検証して、これが意図した機能であるかどうかをお知らせください。当社のコール センター/注文チームがサイトの管理側 (電話で注文するため) で新しい顧客を作成し、当社のデータベースと同期する場合、magento 管理セクションの entity_id にアクセスできる必要があります。
モジュールからの PHP
<?php
class NKI_CustomerSync_Model_Observer
{
public function AddCustomerToQueue($observer)
{
$event = $observer->getEvent();
$customer = $event->getCustomer();
$model=$event->getModel();
echo "<PRE>";
var_dump($event->getName());
var_dump($event->getData());
var_dump($event);
var_dump(get_class_methods($event));
die();
}.....
XML
<config>
<modules>
<NKI_CustomerSync>
<version>0.1.0</version>
</NKI_CustomerSync>
</modules>
<global>
<events>
<adminhtml_customer_save_after>
<observers>
<NKI_customersync_model_observer>
<type>singleton</type>
<class>NKI_CustomerSync_Model_Observer</class>
<method>AddCustomerToQueue</method>
</NKI_customersync_model_observer>
</observers>
</adminhtml_customer_save_after>