2012-01-02 7 views
0

私のカスタムモジュールでは、チェックアウト処理の様々な段階が完了したら何らかのアクションを起こしたいと思います。私はこれを達成するためにMagentoイベント発送システムを使用しています。残念ながら、コア製品内のイベントディスパッチシステムは少し不安です。 1つのチェックアウト段階は、ユーザーが請求先住所を入力する段階です。 1つのページのチェックアウトの方法を使用している場合、私は、イベントのためのオブザーバー持つことができます。多点チェックアウトのMagentoイベント発送

controller_action_postdispatch_checkout_onepage_saveBilling 

を私は請求先住所が入力されている意味するのに最適なイベントであるかどうかわからないのですが、正常に動作するようです。

マルチチェックアウトのプロセスを使用しているときに、私が聞くことができる関連するイベントが表示されません。請求先住所と支払い方法は同じチェックアウト段階にあります。私が思い付くことができる最も関連のイベントは次のとおりです。

controller_action_postdispatch_checkout_multishipping_overview 

も場所の順序で起動されます。

これを行うには良い方法がありますか?

ありがとうございます。

答えて

1

ログとgrep、私の友人、ログとgrep:私はマルチ配送チェックアウトフローを通過している間にすべてのイベントを記録しました。ここには商品のダンプがあります。

controller_action_predispatch_checkout_multishipping_index controller_action_postdispatch_checkout_multishipping_index controller_action_predispatch_checkout_multishipping_addresses controller_action_layout_render_before_checkout_multishipping_addresses controller_action_postdispatch_checkout_multishipping_addresses controller_action_predispatch_checkout_multishipping_addressesPost checkout_type_multishipping_set_shipping_items:

は、イベントが複数回発射し、どのような順序でされている関心のだ場合の目的のリストをデデュープありませんcontroller_action_postdispatch_checkout_multishipping_addressesPost controller_action_predispatch_checkout_multishipping_shipping controller_action_layout_render_before_checkout_multishipping_shipping controller_action_postdispatch_checkout_multishipping_shipping controller_action_predispatch_checkout_multishipping_shippingPost checkout_controller_multishipping_shipping_post controller_action_postdispatch_checkout_multishipping_shippingPost controller_action_predispatch_checkout_multishipping_billing controller_action_layout_render_before_checkout_multishipping_billing controller_action_postdispatch_checkout_multishipping_billing controller_action_predispa私がやっているものだtch_checkout_multishipping_overview controller_action_layout_render_before_checkout_multishipping_overview controller_action_postdispatch_checkout_multishipping_overview controller_action_predispatch_checkout_multishipping_overviewPost checkout_type_multishipping_create_orders_single controller_action_postdispatch_checkout_multishipping_overviewPost controller_action_predispatch_checkout_multishipping_success checkout_multishipping_controller_success_action controller_action_layout_render_before_checkout_multishipping_success controller_action_postdispatch_checkout_multishipping_success

+0

が、私はさらに一歩進んで、イベントがどの段階で解雇されたかを調べます。例えば、「controller_action_postdispatch_checkout_multishipping_billing」は興味深いように見えるが、実際には、チェックアウトプロセスの「出荷情報」段階、すなわち**請求先住所段階の前**に「請求情報への継続」ボタンがクリックされたときに起動される。請求先住所が入力される段階(「請求情報」の段階)では、私の投稿に記載された最良の候補者が表示されます。 – user265330

+0

Gotcha、私の悪い、あなたがまだそれをやっていなかったと仮定して申し訳ありません。私は、そのプロセスで起こったイベントの膨大な量に基づいて、あなたのニーズを満たすためにそこに1つ存在しなければならないと仮定しました。たとえば、controller_action_predispatch_checkout_multishipping_addressesPostは、目的のためにcontroller_action_postdispatch_checkout_multishipping_overviewより関連性が低いと言っていますか? – kalenjordan

+0

こんにちは。 controller_action_predispatch_checkout_multishipping_addressesPostイベントは、「Shipping Information」ステージから「Billing Information」ステージに移行するときに発生しますが、ユーザーがチェックアウトプロセスで請求先住所を完了したときに、情報 "ステージから"プレイスオーダー "ステージに移行します。 – user265330

関連する問題