Up-Sell, Cross-Sell und Related-Product-Links

Magento bietet von Haus aus drei Möglichkeiten an, Produkte untereinander zu verknüpfen um so den Kunden Produktalternativen oder weitere Produkte aufzuzeigen.

Dies kann alternativ zum Backend auch über php lösen. Zuerst benötigt man dafür das Model:

$model = Mage::getModel('Catalog/Product);

Danach natürlich noch ein Produkt:

$product = $model->loadByAttribute('Sku', '12346-0' );

Als nächstes bauen wir ein exemplarisches Array Up-Sell-Produkte zusammen, dieses besteht aus der verknüpften Product-ID, sowie der Position:

$related_products = array(
    11 => array( 'position' => 1 ),
    25 => array( 'position' => 2 ),
    42 => array( 'position' => 3 )
);

Als letztes weisen wir dieses Array unserem Produkt zu und speichern es:

$product->setRelatedLinkData( $related_products );
$product->save();

Das kann kan natürlich auch sehr schön über Daten z.B. CSV, XML laufen lassen, oder auch über Collections, die anhand von bestimmten Attributen gefiltert werden können. Einen Artikel über die grundlegende Benutzung von Collections hat Tobias Vogt bereits hier geschrieben.

Um abweichend auch Related- und/oder Cross-Sell-Produkte zu speichern, einfach sie "Set"-Methode anpassen:

//Related Products
$product->setRelatedLinkData( $values );

//Up-Sell Products
$product->setUpSellLinkData( $values );

//Cross-Sell Products
$product->setCrossSellLinkData( $values );



Ein Beitrag von Ingo Hillebrand
Ingo's avatar

Ingo Hillebrand lebt in Soest und arbeitet als Anwendungsentwickler bei der Firma connect-io. Dort beschäftigt sich der studierte Wirtschaftsinformatiker (Bachelor of Science) weiterhin mit Magento. Sie erreichen ihn per e-Mail an ingo@webguys.de oder über Xing.

Alle Beiträge von Ingo

Kommentare
Link der Woche | magelounge am

[...] Up-Sell, Cross-Sell und Related-Product-Links [...]

Dein Kommentar