Anleitungen & Tutorials
catalog_product.listcatalog_product.infoDa in der Standard-API von Magento (Version 1.x) keine Variantenbeziehungen zwischen Produkten ausgelesen werden können, empfiehlt es sich, die Schnittstelle um diese Funktionalität zu erweitern. Nur so können Produkte inkl. Varianten korrekt in tricoma importiert werden.
Die Erweiterung soll sicherstellen, dass bei den API-Calls
catalog_product.list und catalog_product.info
die Beziehungen zwischen Hauptprodukten (configurable)
und Varianten (simple) mit übertragen werden.
So kann jederzeit erkannt werden:
Folgende neuen Felder sollen in die API integriert werden:
tri_varianten – listet die zugehörigen Varianten eines Hauptprodukts auf.tri_hauptproduct – enthält die product_id des Hauptprodukts, falls vorhanden.tri_merkmale – enthält die Merkmalskombination (z. B. Farbe, Größe) der Variante.
Die Präfixe tri_ werden verwendet, um Namenskonflikte mit bestehenden Magento-Feldnamen zu vermeiden.
configurable) keine Varianten hat, wird übermittelt:
[tri_varianten] => Array ()
simple) keinem Hauptprodukt zugeordnet ist:
[tri_hauptproduct] =>
[tri_merkmale] => Array ()
product_id 10001, sku shirt_tri, Typ: configurableproduct_id 10002, sku shirt_tri-bl-xl, Typ: simpleproduct_id 10003, sku shirt_tri-gr-m, Typ: simpleDie folgenden Beispiele zeigen, wie die erweiterten Felder in den jeweiligen API-Calls eingebunden werden.
catalog_product.list
Array
(
[0] => Array
(
[product_id] => 10001
[sku] => shirt_tri
[name] => T-Shirt "tricoma ist toll!"
[tri_hauptproduct] =>
[tri_merkmale] => Array
(
)
[tri_varianten] => Array
(
[0] => Array
(
[product_id] => 10002
[sku] => shirt_tri-bl-xl
[merkmale] => Array
(
[Farbe] => Blau
[Größe] => XL
)
)
[1] => Array
(
[product_id] => 10003
[sku] => shirt_tri-gr-m
[merkmale] => Array
(
[Farbe] => Grün
[Größe] => M
)
)
)
[weitere] => Daten
)
[1] => Array
(
[product_id] => 10002
[sku] => shirt_tri-bl-xl
[name] => T-Shirt "tricoma ist toll!"
[tri_hauptproduct] => 10001
[tri_merkmale] => Array
(
[Farbe] => Blau
[Größe] => XL
)
[tri_varianten] => Array ()
[weitere] => Daten
)
[2] => Array
(
[product_id] => 10003
[sku] => shirt_tri-gr-m
[name] => T-Shirt "tricoma ist toll!"
[tri_hauptproduct] => 10001
[tri_merkmale] => Array
(
[Farbe] => Grün
[Größe] => M
)
[tri_varianten] => Array ()
[weitere] => Daten
)
[3] => Array
(
[weitere] => Produkte...
)
)
catalog_product.infoHauptprodukt
Array
(
[product_id] => 10001
[sku] => shirt_tri
[type] => configurable
[name] => T-Shirt "tricoma ist toll!"
[tri_varianten] => Array
(
[0] => Array
(
[product_id] => 10002
[sku] => shirt_tri-bl-xl
[merkmale] => Array
(
[Farbe] => Blau
[Größe] => XL
)
)
[1] => Array
(
[product_id] => 10003
[sku] => shirt_tri-gr-m
[merkmale] => Array
(
[Farbe] => Grün
[Größe] => M
)
)
)
[weitere] => Daten
)
Variante 1 – Blau XL
Array
(
[product_id] => 10002
[sku] => shirt_tri-bl-xl
[type] => simple
[name] => T-Shirt "tricoma ist toll!"
[tri_hauptproduct] => 10001
[tri_merkmale] => Array
(
[Farbe] => Blau
[Größe] => XL
)
[tri_varianten] => Array ()
[weitere] => Daten
)
Variante 2 – Grün M
Array
(
[product_id] => 10003
[sku] => shirt_tri-gr-m
[type] => simple
[name] => T-Shirt "tricoma ist toll!"
[tri_hauptproduct] => 10001
[tri_merkmale] => Array
(
[Farbe] => Grün
[Größe] => M
)
[tri_varianten] => Array ()
[weitere] => Daten
)