我有订单对象,我需要获得所有已发货包裹的跟踪号。我尝试了下面的代码,但它没有返回任何东西,甚至我尝试的订单都发送了带有跟踪号的包裹。
$order = Mage::getModel('sales/order')->loadByIncrementId($orderid);
$trackingNumbers = $order->getTrackingNumbers();
Order对象不为空,因为它返回getShippingMethod等其他方法的数据。
如果我点击"Shipping & Handling“链接中的"Information Track Order",弹出窗口将显示所有跟踪编号。
发布于 2011-12-29 12:25:26
试试这个..。
$shipmentCollection = Mage::getResourceModel('sales/order_shipment_collection')
->setOrderFilter($order)
->load();
foreach ($shipmentCollection as $shipment){ $$shipmentCollection->getAllTrack();}
编辑:-
foreach ($shipmentCollection as $shipment){
foreach($shipment->getAllTracks() as $tracknum)
{
$tracknums[]=$tracknum->getNumber();
}
}
现在,$tracknums将拥有跟踪编号数组。
发布于 2016-03-18 06:34:12
您可以简单地执行以下操作:
$orderIncrementId = 100000016; // YOUR ORDER INCREMENT ID;
$order = Mage::getModel('sales/order')->loadByIncrementId($orderIncrementId);
$trackNumber = array();
foreach ($order->getTracksCollection() as $track){
$trackNumber[] = $track->getNumber();
}
https://stackoverflow.com/questions/8667783
复制相似问题