2010-03-11 4 views
0

Je reçois les informations de commande une fois le processus de paiement terminé et j'ai vu quelque chose d'étrange pour moi.Comment obtenir uniquement les produits sélectionnés à partir d'un objet de commande?

J'utilise:

$orderItems = $order->getAllItems(); 

et pour les produits configurables obtenir le T-shirt de parent par exemple, et le moyen sélectionné T-shirt. Donc, je reçois 2 articles au lieu de 1.

Comment obtenir uniquement les produits sélectionnés à partir d'un objet de commande?

Répondre

1

Qu'entendez-vous par "sélectionné". Ils ont sélectionné le produit parent w/options menant à l'enfant? Si vous recherchez l'élément parent, recherchez celui avec type_id de "configurable". Si vous voulez l'enfant, vous avez besoin de celui avec un parent_id qui n'est pas nul.

Je serai heureux de répondre avec le code si vous donnez plus de précisions.

Merci, Joe

+0

Je veux dire que vous choisissez une taille moyenne T-shirt avec sku T_MEDIUM et getAllItems retourne un tableau de deux éléments avec sku tshirt pour le produit configurable et un T_MEDIUM pour le produit réel. Ce que vous avez suggéré est ce que j'ai fait, mais il semble que ce soit une manière plutôt inappropriée de choisir le produit choisi. –

+0

Ce n'est certainement pas optimal, mais pourriez-vous élaborer davantage sur ce que vous cherchez à voir? Le tableau d'ensemble comprendra les skus T_MEDIUM et TSHIRT. Quand vous rencontrez le sku TSHIRT, que pensez-vous qu'il va se passer? Lorsque vous rencontrez le sku T_MEDIUM par la suite, qu'attendez-vous qu'il se passe? Content que la solution fonctionne au moins provisoirement. :) Merci, Joe –

Questions connexes