Question

Je regarde une section de code qui utilise ceci:

if ($_item->getProduct()->getTypeId() === Mage_Catalog_Model_Product_Type_Configurable::TYPE_CODE)

pour déterminer si un produit est configurable. Je suis maintenant de modifier envie que pour détecter si le produit est un paquet - mais il se trouve, il n'y a pas Mage_Catalog_Model_Product_Type_Bundle. De même est-il un Mage_Checkout_Block_Cart_Item_Renderer_Bundle. En fait, je ne vois pas à trouver toutes les classes dédiées bundle, partout - c'est comme ils n'existent pas

Quelle est la raison? Comment les développeurs censés traiter des offres groupées, sans méthodes comme getChildrenIds ou type_code? Sont juste censés être des choses hardcoding?

Était-ce utile?

La solution

Les offres combinées ont été introduites après la sortie de Magento 1, et inconnu raisons, leur mise en œuvre a été séparé dans un nouveau module. système modulaire de Magento et l'espace config.xml partagé permet à ce genre de séparation.

Un coup d'œil rapide à Mage_Bundle révèle une classe de type

app/code/core/Model/Product/Type.php

et un moteur de rendu

app/code/core/Block/Checkout/Cart/Item/Renderer.php

Autres conseils

Les produits bundle ont été ajoutés plus tard dans Magento (après 1.0).
Il est un module totalement séparé. Vérifiez Mage_Bundle.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top