2010-09-18 8 views
2

J'ai besoin de vos suggestions s'il vous plaît, j'utilise actuellement l'API Magento pour importer des produits dans l'admin Magento (base de données magento), et j'ai remarqué que c'est trop lent. Il faut environ 1 heure pour ajouter 1000 produits, et je dois ajouter près de 260 000 produits.Magento Api est trop lent pour beaucoup de produits

Comment puis-je accélérer le processus? Existe-t-il un autre processus pour résoudre ce problème?

Merci pour votre suggestion ou réponse!

Richa Verma

+0

Ceci est très proche de votre question précédente: http://stackoverflow.com/questions/3736463/import-csv-excel-file-into-magento-database, et il y a déjà des réponses. –

Répondre

5

La seule façon d'accélérer ce processus serait tout simplement pas utiliser le api. Comme vous venez de le constater, c'est beaucoup trop lent pour ce type de tâche. Au lieu de cela, vous devrez travailler directement avec la base de données (pour une vitesse maximale), mais cela nécessite malheureusement de comprendre à un niveau très bas comment Magento gère l'insertion de produits et toutes les tables qui y sont touchées. processus.

Une solution intermédiaire peut être d'utiliser les modèles magento etc. pour créer ces produits. Par exemple, pour créer un nouveau produit simple, vous pouvez utiliser ce type de code:

$newProduct = Mage::getModel('catalog/product') 
     ->setAttributeSetId($attributeSetId) 
     ->setTypeId('simple') 
     ->setStatus(1) 
     ->setTaxClassId(2) 
     ->setVisibility(4) 
     ->setSku($sku) 
     ->setName($name) 
     ->setDescription($description) 
     ->setShortDescription($shortDescription) 
     ->setPrice($price) 
     ->save(); 

Ceci est un exemple très simple et il y a tellement plus que vous pouvez faire ici.

J'ai utilisé une méthode similaire avec un module personnalisé pour importer des produits à partir de fichiers csv et il faut quelques heures pour importer environ 1500 produits.

Je pense cependant qu'avec les volumes dont vous parlez, la façon dont vous décidez d'installer ces produits dans Magento va prendre beaucoup de temps. Je voudrais également demander pourquoi vous avez besoin de tant de produits en premier lieu.

+1

Merci! Mais il faudra trop de temps pour comprendre chaque point sur la base de données magento concernant les produits .. Je ne peux pas attendre jusque-là .. Je dois définir tous les produits ASAP – PHP

+1

C'est pourquoi je vous ai suggéré d'essayer le milieu - comprendre les modèles magento et en utilisant ceux-ci. Ils sont beaucoup plus rapides que l'utilisation de l'API. Vous voudrez peut-être regarder l'achat d'une extension ici: http://www.magentocommerce.com/magento-connect. Je sais qu'il y en a plusieurs qui vous permettront d'importer depuis une feuille de calcul –