如何获得Magento中的所有订单追踪号码?
问题描述:
我有订单对象,我需要得到所有包裹追踪号码。我尝试了以下代码,但它甚至没有返回任何命令,我尝试过使用跟踪号码发送的包。如何获得Magento中的所有订单追踪号码?
$order = Mage::getModel('sales/order')->loadByIncrementId($orderid);
$trackingNumbers = $order->getTrackingNumbers();
Order对象不为空,因为它用于其他的方法,如getShippingMethod等
返回数据。如果我从点击“物品&处理”链接“信息订单”,然后弹出窗口显示所有跟踪号码。
答
尝试此..
$shipmentCollection = Mage::getResourceModel('sales/order_shipment_collection')
->setOrderFilter($order)
->load();
的foreach($ shipmentCollection为$装运){$ shipment-> getAllTracks(); }
编辑: -
foreach ($shipmentCollection as $shipment){
foreach($shipment->getAllTracks() as $tracknum)
{
$tracknums[]=$tracknum->getNumber();
}
}
现在$ tracknums将有跟踪号码的阵列。
答
你可以简单地这样做:
$orderIncrementId = 100000016; // YOUR ORDER INCREMENT ID;
$order = Mage::getModel('sales/order')->loadByIncrementId($orderIncrementId);
$trackNumber = array();
foreach ($order->getTracksCollection() as $track){
$trackNumber[] = $track->getNumber();
}
更改顶部部分:'$ shipmentCollection = $命令 - > getShipmentsCollection();' – 2013-11-01 01:04:34