Maison >développement back-end >tutoriel php >Comment accéder et manipuler les articles de commande WooCommerce 3 et leurs données ?

Comment accéder et manipuler les articles de commande WooCommerce 3 et leurs données ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-20 22:19:10833parcourir

How Do I Access and Manipulate WooCommerce 3 Order Items and Their Data?

Accès aux éléments WC_Order et WC_Order_Item_Product dans WooCommerce 3

WooCommerce 3 a introduit des modifications dans la façon dont les éléments de commande sont accessibles et manipulés. Cela inclut la dépréciation de la construction WC_Order_Item_Product, nécessitant des méthodes alternatives pour récupérer les données des articles.

Obtention des propriétés des articles de commande

Auparavant, la méthode get_id() était utilisée pour obtenir l’ID de l’article de commande. Dans WooCommerce 3, les méthodes suivantes doivent être utilisées pour récupérer les propriétés d'un article spécifique :

  • ID de produit : get_product_id()
  • ID de variation : get_variation_id()
  • ID de commande : get_order_id()

Obtention des objets WC_Product et WC_Order

Pour accéder aux objets WC_Product et WC_Order associés à un article de commande, utilisez les méthodes suivantes :

  • WC_Produit : get_product()
  • WC_Order : get_order()

Accès aux données et métadonnées

Le get_data() et get_meta_data() peuvent être utilisées pour obtenir respectivement les données communes et les métadonnées de l'élément. Pour accéder à des métadonnées spécifiques par clé, utilisez la méthode get_meta().

Exemple :

$order_item_id = 15;
$item = new WC_Order_Item_Product($order_item_id);

// Get product ID
$product_id = $item->get_product_id();

// Access common data as an array
$item_data = $item->get_data();

// Access meta data as an array
$item_meta = $item->get_meta_data();

Accès alternatif :

WooCommerce permet toujours l'accès direct aux tableaux pour une compatibilité ascendante avec l'ancien systèmes :

$product_id = $item['product_id'];
$variation_id = $item['variation_id'];

Notes supplémentaires :

  • La classe WC_Order_Item_Product n'a plus de constructeur.
  • get_total() et get_total_tax( ) récupèrent les totaux des éléments de campagne qui prennent en compte les remises lorsqu'un coupon est appliqué.
  • get_formatted_meta_data() peut être utilisé pour récupérer des métadonnées dans un tableau formaté non protégé.
  • Pour plus d'informations, reportez-vous à la documentation WooCommerce et à l'exemple de code fourni.

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