Как мне импортировать продукты в Magento с использованием прямого подключения к базе данных

У меня есть около 50 000 записей для импорта в магазин Magento. Что я уже тестировал: Размер файла около 50 МБ.

  • Разделенные файлы
  • API
  • Классы Magento

Разделение файла не улучшает скорость импорта продуктов. Api очень медленные. Классы Magento работают медленно.

Это фрагмент кода с использованием классов Magento:

// Build the product
$product->setIsMassupdate(true)
        ->setExcludeUrlRewrite(true)
        ->setManufacturer($this->addManufacturers(utf8_encode($record[4])))
        ->setSku($record[3])
        ->setAttributeSetId($this->attribute_set)# 9 is for default
        ->setTypeId(Mage_Catalog_Model_Product_Type::TYPE_SIMPLE)
        ->setName(utf8_encode($record[5]))
        ->setCategoryIds($this->getCategories(array($record[0], $record[1], $record[2]))) # some cat id's,
        ->setWebsiteIDs(array(1)) # Website id, 1 is default
        ->setDescription(utf8_encode($record[6]))
        ->setShortDescription($this->shortText(utf8_encode($record[6]), 150))
        ->setPrice($price) # Set some price
        ->setSpecialPrice($special_price)
        ->setWeight($record[12])
        ->setStatus( Mage_Catalog_Model_Product_Status::STATUS_ENABLED )
        ->setVisibility(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH)
        ->setTaxClassId(2)     // default tax class
        ->setPixmaniaimg($record[10])
        ->setStockData(array('is_in_stock' => $inStock, 'qty' => $qty))
        ->setCreatedAt(strtotime('now'));

$product->save();     
$ID = is_numeric($productID) ? $productID : $product->getId(); 

Таким образом, приведенный выше метод верен, но он тратит около 5 часов, чтобы вставить только 2300 записей !!

Какие простые SQL-вставки, которые я должен выполнить в базе данных Magento, чтобы добавить новый продукт?

5
задан Michelangelo 21 October 2010 в 06:37
поделиться