8/08/2012

Magento: How to get last order id

There are many ways to get last order id:
 
1.  From checkout session:
    $lastOrderId = Mage::getSingleton('checkout/session')
->getLastRealOrderId();


$orderId = Mage::getModel('sales/order')
->loadByIncrementId($lastOrderId)
->getEntityId();

Above solution will not work, if you want to get last order id in admin.
For this you can try this solution:
2.  From model:
 
$orders = Mage::getModel('sales/order')->getCollection()
->setOrder('increment_id','DESC')
->setPageSize(1)
->setCurPage(1);
$orderId = $orders->getFirstItem()->getEntityId();
 
But this method will not work, if there are multi store in a single magento setup. So a better solution would be:

$orders = Mage::getModel('sales/order')->getCollection()
->setOrder('created_at','DESC')
->setPageSize(1)
->setCurPage(1);
$orderId = $orders->getFirstItem()->getEntityId();
 
 
That's all.. Enjoy.. :) 

No comments:

Post a Comment