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
Récupération des totaux
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 :
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!