Magento 1 y Magento 2 tienen los dos eventos:
- sales_order_place_after
- sales_order_save_after.
Tengo cierta confusión sobre ellos, ¿cuáles son las diferencias detalladas entre ellos?
¿Qué situación usar?
fuente
Magento 1 y Magento 2 tienen los dos eventos:
sales_order_place_aftersales_order_save_after.Tengo cierta confusión sobre ellos, ¿cuáles son las diferencias detalladas entre ellos?
¿Qué situación usar?
sales_order_place_after
Mage_Sales_Model_Order::place()Magento 1 y \Magento\Sales\Model\Order::place()Magento 2sales_order_save_after
Este evento extiende el modelo abstracto. Mage_Core_Model_Abstract
Por ej. el Mage_Sales_Model_Orderprefijo evento de clase es sales_order, por lo que el nombre del evento real de carga después será sales_order_load_after.
1. sales_order_place_after:
Este evento se envía desde el
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;
}Este evento se envía solo después de hacer clic en realizar pedido desde la interfaz.
2. sales_order_save_after:
Este evento se activa al guardar el orden, ya sea desde el backend o la interfaz. Cada vez que se realiza alguna edición en orden y se guarda, se envía este evento. Este evento se envía al realizar el pedido desde la interfaz también.