get_product_from_item ($ item) устаревшая замена в WooCommerce


1 принят

Вы можете использовать WC_data get_data()метод on WC_Orderи WC_Order_Itemsobject таким образом:

// For testing only
$order = wc_get_order(500);

// Iterate though each order item
foreach ($order->get_items() as $item_id => $item) {

    // Get the WC_Order_Item_Product object properties in an array
    $item_data = $item->get_data();

    if ($item['quantity'] > 0) {
        // get the WC_Product object
        $product = wc_get_product($item['product_id']);
        // test output
        print_r($product);
    }
}

Или с помощью WC_Order_Item_Product get_product_id()методов:

// For testing only
$order = wc_get_order(500);

// Iterate though each order item
foreach ($order->get_items() as $item_id => $item) {
    if( $item->get_quantity() > 0 ){
        // Get the product id from WC_Order_Item_Product object
        $product_id = $item->get_product_id();
        // get the WC_Product object
        $product = wc_get_product($item['product_id']);

        // test output
        print_r($product);
    }
}

Все это работает внутри активных php-файлов темы.

При тестировании в php-файлах темы я могу получить WC_Productобъект с$item->get_product();


Связанный ответ: Как получить детали заказа WooCommerce

PHP, WordPress, WooCommerce, фотографии, SagePay,

php,wordpress,woocommerce,checkout,sagepay,

1

Ответов: 1


1 принят

Вы можете использовать WC_data get_data()метод on WC_Orderи WC_Order_Itemsobject таким образом:

// For testing only
$order = wc_get_order(500);

// Iterate though each order item
foreach ($order->get_items() as $item_id => $item) {

    // Get the WC_Order_Item_Product object properties in an array
    $item_data = $item->get_data();

    if ($item['quantity'] > 0) {
        // get the WC_Product object
        $product = wc_get_product($item['product_id']);
        // test output
        print_r($product);
    }
}

Или с помощью WC_Order_Item_Product get_product_id()методов:

// For testing only
$order = wc_get_order(500);

// Iterate though each order item
foreach ($order->get_items() as $item_id => $item) {
    if( $item->get_quantity() > 0 ){
        // Get the product id from WC_Order_Item_Product object
        $product_id = $item->get_product_id();
        // get the WC_Product object
        $product = wc_get_product($item['product_id']);

        // test output
        print_r($product);
    }
}

Все это работает внутри активных php-файлов темы.

При тестировании в php-файлах темы я могу получить WC_Productобъект с$item->get_product();


Связанный ответ: Как получить детали заказа WooCommerce

PHP, WordPress, WooCommerce, фотографии, SagePay,
Похожие вопросы