>백엔드 개발 >PHP 튜토리얼 >WooCommerce 3에서 주문 항목 데이터에 액세스하는 방법은 무엇입니까?

WooCommerce 3에서 주문 항목 데이터에 액세스하는 방법은 무엇입니까?

DDD
DDD원래의
2024-12-19 13:45:10242검색

How to Access Order Item Data in WooCommerce 3?

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 클래스에는 생성자가 없으며 해당 속성은 전용 방법을 통해 액세스할 수 있습니다. 특정 데이터를 검색하는 주요 방법은 다음과 같습니다.

특정 데이터 검색

  • 제품 ID: get_product_id()
  • 변형 ID: get_variation_id()
  • 주문 ID: get_order_id()
  • WC_Product 객체: get_product()
  • WC_Order 객체 : get_order()
  • 항목 ID: get_id()
  • 제품 이름: get_name()
  • 제품 SKU : get_product()->get_sku()

총계 가져오기

  • 소계(할인되지 않음): get_subtotal()
  • 세금 소계(할인되지 않음): get_subtotal_tax()
  • 총액(할인됨): get_total()
  • 총 세금 (할인됨): get_total_tax()

주문 항목 검색

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 주문을 받는 방법 세부 정보](https://stackoverflow.com/questions/32144098/how-to-get-woocommerce-order-details)

위 내용은 WooCommerce 3에서 주문 항목 데이터에 액세스하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.