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
Libérer: 2024-12-19 13:45:10
original
370 Les gens l'ont consulté

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;
Copier après la connexion

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();
}
Copier après la connexion

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 );
Copier après la connexion

Accès au tableau :

$product_id    = $item['product_id']; // Get the product ID
$variation_id  = $item['variation_id']; // Get the variation ID
Copier après la connexion

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 de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal