MagentoにMagmiを導入して大量商品インポートしてみる
Magmiを使ってMagentoにCSVでデータを登録してみようと思います。
諸事情で数十万件のデータをMagentoに登録する必要があり、
Magentoの標準機能としてのインポートでは対応しきれなかったのでこのソリューションを見つけました。
Magmiの発見はここです。
http://www.magentocommerce.com/boards/main.php/viewthread/292766/#t405580
Magmiについて
http://www.magentocommerce.com/boards/viewthread/201210/
Magento1.6にも1.7にも対応している。
CLIで動作する。GUIがある。
Magmiの使い方はWikiを参照
http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Main_Page
ダウンロードはここから
http://sourceforge.net/projects/magmi/
http://sourceforge.net/projects/magmi/files/magmi-0.7/plugins/
以下のファイルをダウンロード
magmi_0.7.18beta2.zip magmi_extra_plugins_20121114.zip magmi_utilities_plugins_20121106.zip
magmi_0.7.18beta2.zipを解凍して、中身をMagentoのドキュメントルート以下に配置します。
パーミッションは775にする。
pluginsディレクトリにextraとutilitiesのプラグインファイルを置く。
私が使用しているMagentoのバージョンは1.6.2です。
サーバー側でインポートディレクトリを作る
$ cd /var/www/html/magento/magmi $ mkdir var $ mkdir import $ mkdir state $ sudo chown -Rf apache.dev var $ sudo chown -Rf apache.dev state
サーバーへpushしたディレクトリのパーミッションを755から775に変更する
$ sudo su # find magmi -type d -perm 755 -exec chmod 775 {} \;
もしエラーがでたら、パーミッションを疑う。
magmi/stateディレクトリがないのでつくらないといけなかった。
magmi/var/importディレクトリもつくっておく。
ブラウザで次のページにアクセスする
http://
MagentoへインポートしたいCSVファイルを次のディレクトリに配置する。
/var/www/html/magento/magmi/var/import/
GUIはこのページに掲載されているので参考に。
http://sourceforge.net/apps/mediawiki/magmi/index.php?title=UI_Main_page_organization
GUIのConfigure Global Parametersにて各種パラメータを設定する。
DB、Magentoのバージョンなど。
Importデータのフォーマッットについて。
ファイルの種類はCSVです。
defaultだとMagentoで使われているDataflowフォーマットが使われている。
http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Import_-_CSV_datasource
http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Column_mapper
MagentoのDataflow CSV フォーマットは、4種類の列がある。
1- Product scope columns store websites 2 Product nature columns attribute_set type 3- Product option columns status all product display info columns all product date related columns (xxxx_date) all product stock options columns 4- Attribute columns all columns matching your product attributes code (standard or custom).
カスタムオプションを今回使うので、次のとおり設定する。
http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Custom_Options
GUIでプラグインCustom Option を有効にしておくこと。
CSVに記載するカスタムオプション列のフォーマットは、Name:Type:is Required:sort number
Typeは今回であればfieldとmultipleを使う。
multipleの場合、値が複数あるので区切り文字として「|」を使う。
価格などを付加する場合のフォーマットは、値の後ろにオプションをつける。
Value:[fixed|percent]:price_modifier:[sku_modifier]:[sort number] 例:Small:fixed:0:-S:1|Medium:fixed:5:-M:2|Large:fixed:10:-M:3
カスタムオプションがあると、例えば、次のようなcsvフォーマットになる。
sku,name,description,price,Size:drop_down:1 T-Shirt1,T-Shirt,A T-Shirt,5.00,Small:fixed:0:-SM|Medium:percent:2:-MED|Large:percent:3:-LRG T-Shirt2,T-Shirt2,Another T-Shirt,6.00,XS:fixed:0:-XS:1|S:fixed:0:-S:2|M:fixed:1:-M:3
どうやってImportデータをインポートするか?
ファイルをサーバーのmagent/var/importに配置する
GUIで、[File to Import]欄からファイルを選ぶ。
GUIで[Run Import]ボタンをクリックする。
削除はできるのか?
http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Product_Deleter
更新はできるのか?
http://sourceforge.net/apps/mediawiki/magmi/index.php?title=Update_existing_products
できます。
実際に、約60万件のデータを数時間以内で追加/データ更新できるようになりました。
感謝。