在 WooCommerce 3 中檢索訂單項目和產品對象
在 WooCommerce 3 中,從訂單項目訪問屬性發生了重大變化。不再可以直接存取像 $order_item->get_id() 這樣的商品 ID,從而導致錯誤。
取得產品和變體ID、訂單ID 和WC_Product 物件
要擷取訂單商品的各種屬性,您應該使用以下命令方法:
-
產品ID: $item->get_product_id()
-
變體 ID: $item->get_variation_id( )
-
下單ID: $item->get_order_id()
-
WC_Product 物件: $item->get_product()
擷取訂單項目和 WC_Product物件來自訂單
要取得訂單商品及其關聯的 WC_Product 物件:
- 使用 wc_get_order($order_id) 擷取 WC_Order 物件。
- 迭代 $ order->get_items() 循環,其中每個 Order Item 的型別為 WC_Order_Item_Product。
- 使用上述方法檢索所需的屬性。
存取和取消保護資料和元資料
WC_Data 方法可讓您存取和取消保護資料以及與訂單商品關聯的元資料:
-
使用WC_Data 的不受保護資料: $item->get_data(), $item->get_meta_data()
-
舊陣列的陣列存取: $item['product_id'], $item['variation_id']
其他輔助方法
-
取得產品 SKU: $product->get_sku()
-
取得訂單項目總計(非折扣): $item->get_subtotal()、$item->get_subtotal_tax()
-
取得訂單項目總計(折扣): $item->get_total(), $item->get_total_tax()
-
取得格式化元資料: $item->get_formatted_meta_data()
以上是如何在 WooCommerce 3 中有效地檢索訂單項目和產品資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!