西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > magento教程 >

如何获得订单的订单 Id 的详细信息

时间:2016-04-11 00:41来源: 作者: 点击:
在本教程中,我们会经过如何获取按订单 Id订单的详细信息 获取订单的详细信息取决于几个组件: 顺序 (通常顺序 #) 内容的顺序 (简单 vs 可配置,隐形等)。 你要到提取物 (定价 vs 其

在本教程中,我们会经过如何获取按订单 Id 订单的详细信息

获取订单的详细信息取决于几个组件:

  1. 顺序 (通常顺序 #)
  2. 内容的顺序 (简单 vs 可配置,隐形等)。
  3. 你要到提取物 (定价 vs 其他信息) 的信息

要按增量 id 之一加载顺序执行:

 
1
Mage::getModel('sales/order')->loadByIncrementId('10000001'); //use a real increment order id here
若要加载由实体 id 你会只是调用load:
 
1
Mage::getModel('sales/order')->load(24999); //use an entity id here
加载您的订单: (db: sales_flat_order)
 
1
2
$OrderNumber = "100000001";//Put your order Number here
$order = Mage::getModel('sales/order')->load($OrderNumber, 'increment_id');

下一步,基于顺序筛选您的集合项。

最会做的是: (db: sales_flat_order_item)

1
$order->getAllVisibleItems();

这将显示可见的产品。这个问题是,它将获取集合 (其奇怪的是儿童的 sku 的记录中) 中的"可配置"项目。我觉得这是不可预知的 SKU 发生变更,如历史 SKU 不再存在。相反,我们发现它更好地做另一种方法,如下所示。

 
1
2
3
4
$orderItems = $order->getItemsCollection()
        ->addAttributeToSelect('*')
        ->addAttributeToFilter('product_type', array('eq'=>'simple'))
        ->load();
  • 父母和孩子,最令人困惑,实际上将返回 getItemsCollection()。让我们重点看孩子。
  • 传统上,父 (ie。可配置) 将有定价信息,儿童 (简单) 将不会。与 (简单产品) 的孩子我们能够确定是否有复制 (它 (而不是相反),我们能够也抢起 getAllVisibleItems() entity_id (而不是相反) 中的产品信息。
  • 循环访问订单项的集合
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
foreach($orderItems as $sItem) {
 
    //Ignore conf for now
    //Alt. Mage_Catalog_Model_Product_Type::TYPE_SIMPLE = 'simple';
    if($sItem->getProductType() == "simple")
    {
 
 
 
        echo "\n*********************************\nMage Order #: ".$OrderNumber."\n";
        //Simple Item Info from Order
        echo "Type: ".$sItem->getProductType()."\n";
        echo "Order Id: ".$sItem->getOrderId()."\n";
        echo "Product Id: ".$sItem->getProductId()."\n";
        echo "Item Id: ".$sItem->getId()."\n";
        echo "Item Name: ".$sItem->getName()."\n";
        echo "Item Sku: ".$sItem->getSku()."\n";
        echo "Item Price: ".$sItem->getPrice()."\n";
 
        $pItemId = $sItem->getParentItemId();
        echo "Parent Item Id: ".$pItemId."\n";
 
        echo "\n*****\n";
//Get Parent Item Information
$item = Mage::getModel('sales/order_item')->load("$pItemId"); //use an item_id here
 
        //Testing, want to see whats inside the parent/configurable item?
        //print_r($item->toArray());
 
        echo "Parent Type: ".$item->getProductType()."\n";
        echo "Parent Order Id: ".$item->getOrderId()."\n";
        echo "Product Id: ".$item->getProductId()."\n";
        echo "Item Id: ".$item->getId()."\n";
        echo "Parent Item Price: ".$item->getPrice()."\n";
        echo "Qty: ".$qty = intval($item->getQtyOrdered())."\n";
 
        //get Active Product Data
        $nProduct = Mage::getModel('catalog/product')->load($sItem->getProductId());
$nSku = $nProduct->getSku();
    echo "new Product UPC:".$nUpc = $nProduct->getUpc() . "\n";
        echo "new Product Price:".$nPrice = $nProduct->getPrice(). "\n";
 
        }
    }

(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容