`Sales_order_place_after` ve` sales_order_save_after` arasındaki fark nedir?


12

Magento 1 ve Magento 2'nin ikisi de iki etkinliğe sahip:

  1. sales_order_place_after
  2. sales_order_save_after.

Onlar hakkında biraz karışıklığım var, aralarındaki ayrıntılı farklar nedir?

Hangi durumu hangisi kullanmalı?

Yanıtlar:


21

sales_order_place_after

  1. Bu olay, sipariş ödemesi yapıldıktan sonra gönderilir.
  2. Mage_Sales_Model_Order::place()Magento 1 ve \Magento\Sales\Model\Order::place()Magento 2'deki bu etkinlik işlevi

sales_order_save_after

  1. Bu olay, sipariş her kaydedildiğinde çağrılır. Örneğin. Sipariş durumu değişti, faturalandı, gönderildi ve alacak dekontu.
  2. Soyut modeli genişleten bu olay Mage_Core_Model_Abstract

    Örneğin. Mage_Sales_Model_Ordersınıf olay öneki sales_ordergerçek sonra yükleme etkinliğin adı olacaktır, böylece sales_order_load_after.


5

1. satış_birimi_yeri_sonrası:

Bu olay,

class Mage_Sales_Model_Order extends Mage_Sales_Model_Abstract
{
...
public function place()
{
    Mage::dispatchEvent('sales_order_place_before', array('order'=>$this));
    $this->_placePayment();
    Mage::dispatchEvent('sales_order_place_after', array('order'=>$this));
    return $this;
}

Bu olay yalnızca ön uçtan yer siparişi tıklandıktan sonra gönderilir.

2. satış_sipariş_kaydı_sonrası:

Bu olay, arka uçtan veya ön uçtan sipariş kaydetme sırasında tetiklenir . Düzenli olarak her düzenleme yapıldığında ve kaydedildiğinde, bu olay gönderilir. Bu olay, ön uçtan sipariş verirken de gönderilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.