Codeschnipsel: Von Simple zum Configurable-Product

Configurable-Products setzen sich aus Simple-Products zusammen. Bei einem Produktimport kann es nun vorkommen das sich am Simple-Product ändert was eventuell Einfluss auf das Configurable-Product hat. Wie lässt sich also von einem Simple-Product das passende Configurable finden? Ganz einfach..

$simple_product = Mage::getModel('catalog/product')->load( 1234 /* Ein Simple-Product laden */ );
$configurable_ids = $simple_product->loadParentProductIds()->getData('parent_product_ids') );

Ab Magento 1.4.2 ist die Funktion so nicht mehr verfügbar. Stattdessen ist folgendes zu verwenden:

$configurable_product_model = Mage::getModel(‘catalog/product_type_configurable’);
$parentIdArray = $configurable_product_model->getParentIdsByChild($simple_product_id);

Mit Dank an Simon Sprankel.



Ein Beitrag von Tobias Vogt
Tobias's avatar

Tobias Vogt arbeitet seit 2008 mit Magento und ist seit 2011 durch Magento zertifizierter Entwickler. Seit 2016 ist er Mitgründer und CTO bei der connect-io GmbH, einer Magento-Agentur mit Sitz im idyllischen Paderborn-Salzkotten. Er gehört zum Gründer-Team der Webguys und ist seit November 2011 Bachelor of Science (Wirtschaftsinformatik). Sie erreichen Ihn per E-Mail unter tobi@webguys.de.

Alle Beiträge von Tobias

Kommentare
Daniel Goncalves am

Super, das hat mir wirklich geholfen. Daniel

Tobias Vogt am

Deutlich sauberer, vielen Dank!

Simon Sprankel am

Ja, kann man machen. Ansonsten habe ich eine Lösung in einem anderen Blog gefunden, finde ich etwas schöner :-)

$configurable_product_model = Mage::getModel('catalog/product_type_configurable'); $parentIdArray = $configurable_product_model->getParentIdsByChild($simple_product_id);

Tobias Vogt am

Ich habe die Methode einfach in meine eigene Classe portiert. So verhielt sich das System wieder wie gewohnt und ich musste nicht alles umbauen :)

Simon Sprankel am

Hast du schon eine Alternative gefunden? :-)

Tobias Vogt am

Die Methode getParentProductIds ist in Magento 1.4.2.0 nicht mehr vorhanden. Das Beispiel funktioniert somit so leider nicht mehr.

Dein Kommentar