Woocommerce - Obtenir le prix de l'article de commande et la quantité.
À l'aide de Thème 2.6.8 , je ne peux pas obtenir le poste de Commande des informations de Données comme décrit dans la docs et ici DONC.
Tout ce que je veux est d'obtenir la Ligne de l'Élément de prix et de Quantité, ce qui devrait être aussi simple que:
$order = new WC_Order( $order_id );
$order_items = $order->get_items();
foreach ($order_items as $items_key => $items_value) {
echo $items_value['name']; //this works
echo $items_value['qty']; //this doesn't work
echo $items_value[item_meta][_qty][0]; //also doesn't work
echo $items_value['line_total']; //this doesn't work
}
Y regarder de plus près à ce qui est retourné retourné
Array
(
[1] => Array
(
[name] => Sample Product 1
[type] => line_item
[item_meta] =>
[item_meta_array] => Array
(
[1] => stdClass Object
(
[key] => _qty
[value] => 1
)
[2] => stdClass Object
(
[key] => _tax_class
[value] =>
)
[3] => stdClass Object
(
[key] => _product_id
[value] => 8
)
[4] => stdClass Object
(
[key] => _variation_id
[value] => 0
)
[5] => stdClass Object
(
[key] => _line_subtotal
[value] => 50
)
[6] => stdClass Object
(
[key] => _line_total
[value] => 50
)
[7] => stdClass Object
(
[key] => _line_subtotal_tax
[value] => 0
)
[8] => stdClass Object
(
[key] => _line_tax
[value] => 0
)
[9] => stdClass Object
(
[key] => _line_tax_data
[value] => a:2:{s:5:"total";a:0:{}s:8:"subtotal";a:0:{}}
)
)
)
)
Tout ceci est documenté à l'aide de Thème méthodes, pourquoi les informations dont j'ai besoin stockées dans ce item_meta_array
?
Personne ne sait comment je peux obtenir cette information?
De préférence à l'aide de méthodes documentées par opposition à un brut hack d'une boucle dans le item_meta_array
jusqu'à ce que je trouve la clé, je suis à la recherche d'.
Je sens que je dois rater quelque chose d'évident.
source d'informationauteur robobobobo
Vous devez vous connecter pour publier un commentaire.
Maintenant, pour le code, vous pouvez utiliser
WC_Order_Item_Product
(etWC_Product
) méthodes au lieu de cela, comme:Ce code est testé et fonctionne.
Vous pouvez utiliser
get_item_meta()
WC_Abstract_order méthode, pour obtenir l'ordre de métadonnées (la quantité de l'article et le prix du produit total).De sorte que votre code sera:
Ce code est testé et entièrement fonctionnel.
Référence: Classe WC_Abstract_Order Méthodes
Prix de l'article, pouvez obtenir à partir d'
order
objet par le code ci-dessousVeuillez consulter cette documentation pour thème la Ligne de l'élément dans l'ordre de la classe.
Ici
Vous pouvez appeler au total pour obtenir le coût total de la commande.
Si vous souhaitez récupérer l'unique élément de coût en prenant le product_id
Ou vous pouvez le faire.