Vortrag produktimport

1,248 views
1,158 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,248
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Vortrag produktimport

  1. 1. Mythos Produktimport Damian Luszczymak Donnerstag, 11. November 2010
  2. 2. Damian Luszczymak • Fachinformatiker • Wirtschaftsinformatik • PHP, Java, Objective-C • Magento seit Beta • Datenimport / Suche • Magento Solr Extension http://connect.get-the-code.de Donnerstag, 11. November 2010
  3. 3. Warum? •Initialimport •Warenwirtschaft •Keiner hat Lust dies einzutippen! •4 mögliche Wege Donnerstag, 11. November 2010
  4. 4. Möglichkeiten •Dataflow •SOAP API •Model •RAW Datenbank Donnerstag, 11. November 2010
  5. 5. •CSV mit Attributen •Einstellung im Magento Backend •Nur Simple Products •Cron kann eingerichtet werden Dataflow Donnerstag, 11. November 2010
  6. 6. Dataflow Donnerstag, 11. November 2010
  7. 7. Dataflow Donnerstag, 11. November 2010
  8. 8. •Problem ist immer die CSV ! Wegen Leerzeichen oder Zeilenumbrüchen Dataflow Donnerstag, 11. November 2010
  9. 9. •SOAP API vI v2 (v3) •Unterstützt jede Programmiersprache •Overhead SOAP API Donnerstag, 11. November 2010
  10. 10. •recht langsamen •Probleme je nach Sprache mit wsdl •schwer zu debuggen,erweitern (IMHO) SOAP API Donnerstag, 11. November 2010
  11. 11. SOAP API $proxy = new SoapClient('http://magentohost/api/soap/?wsdl'); $sessionId = $proxy->login('apiUser', 'apiKey'); Donnerstag, 11. November 2010
  12. 12. SOAP API $attributeSets = $proxy->call($sessionId,'product_attribute_set.list'); $set = current($attributeSets); $newProductData = array( 'name' => 'name of product', 'websites' => array(1), // array(1,2,3,...) 'short_description' => 'short description', 'description' => 'description', 'price' => 12.05 ); Donnerstag, 11. November 2010
  13. 13. SOAP API // Create new product $proxy->call($sessionId, 'product.create', array('simple', $set['set_id'], 'sku_of_product', $newProductData)); // Get info of created product $proxy->call($sessionId, 'product.info', 'sku_of_product'); Donnerstag, 11. November 2010
  14. 14. •schneller als SOAP aber langsam •Upgradefähig •Robust •alles was Magento macht, ist möglich Model API Donnerstag, 11. November 2010
  15. 15. Model API require_once("../app/Mage.php"); Mage::app('admin'); $product = Mage::getModel('catalog/product'); $existSku = $product->getIdBySku($int_sku); Donnerstag, 11. November 2010
  16. 16. Model API $product->setWebsiteIds(array('0')); $product->setAttributeSetId(4); $product->setSku($int_sku); $product->setTypeId('simple'); $product->setName('Meet Magento'); $product->setDescription('Alles ganz duffte'); $product->setShortDescription('jep'); $product->setPrice($arr_products2[8]); Donnerstag, 11. November 2010
  17. 17. Model API $product->setWeight(10); $product->setTaxClassId(2); //0-Disabled; 1-Enabled $product->setStatus(1); // 1-Nowhere; 2-Catalog; 3-Search; 4-Catalog/Search $product->setVisibility(4); Donnerstag, 11. November 2010
  18. 18. Model API $stockData['qty'] = 1; $stockData['is_in_stock'] = 1; $stockData['manage_stock'] = 0; $product->setStockData($stockData); $product->save(); Donnerstag, 11. November 2010
  19. 19. •man muss die Magento DB Struktur kennen •nicht upgradefähig •dafür schneller beim import •eigene Logik muss implementiert werden Raw DB Donnerstag, 11. November 2010
  20. 20. Raw DB insert into catalog_product_entity (entity_type_id,attribute_set_id,sku,created_at) ... Soll ich die Struktur genauer erklären? Ist das gewünscht? Donnerstag, 11. November 2010
  21. 21. •Wenn man schnell importieren will autoindexer deaktivieren •nach manuell anstossen Optimierungen Donnerstag, 11. November 2010
  22. 22. uRapidFlow •das schnelle Dataflow •80.000 simple Products 20min •Magento Backend werden Attribute zugewiesen •CSV Dateien, läd automatisch Bilder herunter (optional) Donnerstag, 11. November 2010
  23. 23. MIP •Egal ob CSV,XML,SOAP •XSLT basierend •schneller als normal API •robust Donnerstag, 11. November 2010
  24. 24. Anmerkungen oder Fragen? Donnerstag, 11. November 2010
  25. 25. Kontakt Damian Luszczymak @daimcity +49-160-94 90 19 32 info@icyapp.de Donnerstag, 11. November 2010

×