Maison >développement back-end >tutoriel php >Comment accéder aux données des articles de commande dans WooCommerce 3 ?

Comment accéder aux données des articles de commande dans WooCommerce 3 ?

DDD
DDDoriginal
2024-12-19 13:45:10266parcourir

How to Access Order Item Data in WooCommerce 3?

Accéder aux éléments de commande et WC_Order_Item_Product dans WooCommerce 3

Un changement notable dans WooCommerce 3 est l'impossibilité d'accéder directement aux propriétés des éléments de commande. Le code suivant, qui fonctionnait auparavant, génère désormais une erreur :

$order_item_id = 15;
$order_item = new WC_Order_Item_Product($order_item_id);
$return = $order_item->get_id() ? $order_item : false;

Comprendre les nouveaux mécanismes

Dans WooCommerce 3, la classe WC_Order_Item_Product n'a pas de constructeur, et ses propriétés peuvent être accessible via des méthodes dédiées. Voici les méthodes clés pour récupérer des données spécifiques :

Récupération de données spécifiques

  • ID de produit : get_product_id()
  • ID de variante : get_variation_id()
  • ID de commande : get_order_id()
  • Objet WC_Product :get_product()
  • Objet WC_Order : get_order()
  • ID de l'article : get_id()
  • Nom du produit : get_name()
  • SKU du produit : get_product()->get_sku()

Récupération des totaux

  • Sous-total (sans remise) : get_subtotal( )
  • Taxe sous-total (non réduit) : get_subtotal_tax()
  • Total (réduit) : get_total()
  • Taxe totale (réduit) : get_total_tax()

Récupération de la commande Articles

Pour récupérer les articles de commande à partir d'un objet WC_Order et accéder à leurs données (à l'aide de l'objet WC_Product), utilisez le code suivant :

$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();
}

Accès aux données et aux paramètres personnalisés Métadonnées

Déprotection des données et Métadonnées :

$formatted_meta_data = $item->get_formatted_meta_data( ' ', true );
$meta_value = $item->get_meta( 'custom_meta_key', true );

Accès au tableau :

$product_id    = $item['product_id']; // Get the product ID
$variation_id  = $item['variation_id']; // Get the variation ID

Référez-vous aux ressources liées ci-dessous pour plus d'informations :

  • [Récupérer les métadonnées d'un article de commande dans woocommerce 3](https://stackoverflow.com/questions/54304498/get-the-metadata-of-an-order-item-in-woocommerce-3)
  • [Comment obtenir les détails de la commande WooCommerce]( https://stackoverflow.com/questions/32144098/how-to-get-woocommerce-order-details)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn