2012-03-28 3 views
1

J'essaie de travailler sur quelque chose dans Magento, mais je ne suis pas sûr de la meilleure façon de faire les choses.observateur de panier

Je vends du tissu/matériel, ce qui est cher. Je permets donc aux clients d'acheter des «échantillons» de ces tissus.

Ce que je dois faire est: * Chacun de ces échantillons sont gratuits (00,00 $), mais .. * Si le client dispose de 5 articles ou plus (pas plus de 15 articles) je besoin d'ajouter un supplément Donc, si un client a ajouté 8 échantillons à son panier, ils doivent être chargés tout ce qu'ils ont dans leur panier actuellement, plus 20 $ pour les échantillons. Est-ce que je peux le faire dans une méthode d'observation?

Un grand merci

Répondre

6

Cela peut être fait avec un observateur, oui. Pour trouver des événements pertinents pour vous d'utiliser, utiliser dans la ligne de commande:

grep -rin -B2 -A2 "Mage::dispatchEvent" app/* > events.txt 

Maintenant, vous pouvez facilement rechercher le fichier events.txt pour panier. Personnellement, je ferais un effort pour mettre à jour le panier, et pas seulement mettre à jour le total lors de la commande. Vous ne voulez pas surprendre les visiteurs avec des frais supplémentaires. Voici donc quelques-uns qui pourraient aider:

checkout_cart_update_items_after 
checkout_cart_product_add_after 
checkout_cart_add_product_complete 
checkout_cart_update_item_complete 
checkout_cart_save_before 
checkout_cart_save_after