Magento 1.9 проверьте, получил ли заказ отправку
Я хочу загрузить определенный блок в транзакционное электронное письмо только после отправки заказа. Я хочу загрузить блок, купить, используя следующий код:
{{block type='core/template' area='frontend' template='email/order/invoiceemailhead.phtml' order=$order}}
Я уже использую этот шаблон для проверки метода оплаты, но с использованием;
<?php if($this->getOrder()->getPayment()->getMethodInstance()->getCode()=='cashondelivery'):?>
Как я могу также проверить, отправлен ли заказ? Какой код мне для этого нужен?
1
2 answers
Попробуйте использовать приведенный ниже код, чтобы проверить, отправлен ли заказ.
<?php $hasShipment = $this->getOrder()->getShipmentsCollection()->count();
if($hasShipment){
.... // Do your stuff
}
?>
3
Author: Jaimin Sutariya, 2017-09-01 23:27:00
Если вы хотите проверить, полностью ли отправлен заказ, может помочь следующая функция:
/**
* @param Mage_Sales_Model_Order $order
* @return boolean
*/
protected function isOrderCompletelyShipped(Mage_Sales_Model_Order $order)
{
foreach ($order->getAllItems() as $item) {
if ($item->getParentItemId()) {
continue;
}
if ($item->getQtyShipped() !== $item->getQtyOrdered()) {
return false;
}
}
return true;
}
0
Author: ahe_borriglione, 2020-09-10 10:31:55