在 WooCommerce 3 中存取訂單項目和 WC_Order_Item_Product
WooCommerce 3 中的一個顯著訂單變化是無法直接存取訂單的屬性。以下程式碼以前有效,現在會導致錯誤:
$order_item_id = 15; $order_item = new WC_Order_Item_Product($order_item_id); $return = $order_item->get_id() ? $order_item : false;
了解新機制
在 WooCommerce 3 中,WC_Order_Item_Product 類別沒有建構函數,其屬性可以透過專用方法存取。以下是擷取特定資料的關鍵方法:
擷取特定資料
檢索總計
從WC_Order 檢索訂單並存取其項目並存取其項目數據(使用WC_Product物件),使用以下內容代碼:
$order_id = 156; // The order_id $order = wc_get_order( $order_id ); foreach( $order->get_items() as $item_id => $item ){ // Product ID $product_id = $item->get_product_id(); // Variation ID $variation_id = $item->get_variation_id(); // WC_Product Object $product = $item->get_product(); // Product Name $product_name = $item->get_name(); }存取資料和自訂元資料
取消保護資料和元資料:
$formatted_meta_data = $item->get_formatted_meta_data( ' ', true ); $meta_value = $item->get_meta( 'custom_meta_key', true );陣列存取:
請參閱下面的連結資源以獲取更多見解:
$product_id = $item['product_id']; // Get the product ID $variation_id = $item['variation_id']; // Get the variation ID[取得 woocommerce中訂單商品的元資料3](https://stackoverflow.com/questions/54304498/get-the-metadata-of-an-order-item-in-woocommerce-3)
以上是如何存取 WooCommerce 3 中的訂單項目資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!