インポート時に画像のMagentoディレクトリ構造を変更する方法
-
12-12-2019 - |
質問
インポートしようとしていることは、インポートされた画像のデフォルトのフォルダ構造を変更することです。 たとえば、image magentoのデフォルトのディレクトリ構造は、/ media/catalog/product/x/y/xyimage.jpg の下のディレクトリ構造を作成するために、画像の最初の文字と2文字目にディレクトリ構造をデフォルトにします。
コアを変更できるようにするには、次のようなものに変更できます。 /media/catalog/product/sku/xyz/skuxyzimage.jpg. したがって、最初の3文字はディレクトリの最上位レベルで、次の3文字はディレクトリの2番目のレベルです。
解決 2
これは簡単な回避策であり、60Kの製品を超えたばかりです。
Magmi(Googleを検索)をインストールします.NEVIGATEに\magmi\plugins\extra\itemprocessors\imageprocessor
お気に入りのエディタでimageitattributeemprocessor.php
を開き、この小さな修正で496~505を置き換えます。
$i1 = $bimgfile[0];
$i2 = $bimgfile[1];
$i3 = $bimgfile[2];
$i4 = $bimgfile[3];
$i5 = $bimgfile[4];
$i6 = $bimgfile[5];
// magento image value (relative to media catalog)
$impath = "/$i1$i2$i3/$i4$i5$i6/$bimgfile";
// target directory;
$l2d = "media/catalog/product/$i1$i2$i3/$i4$i5$i6";
.
あなたが見ることができるように私は私の構造をそのままにするために$ impathを選びました
"/$i1$i2$i3/$i4$i5$i6/$bimgfile"
翻訳されたsku123456.jpgはmedia/catalog/product/sku/123/sku123456.jpg
です。
原油描画ですみません(私はこれで新しい新しい)
Magmiをアップグレードするかどうかを常に覚えておいてください。これは常にファイルをバックアップしてください。
他のヒント
コードの後退
-
Mage_Catalog_Model_Product::addImageToMediaGallery
-
Mage_Catalog_Model_Product_Attribute_Backend_Media::addImage
-
Varien_File_Uploader::getDispretionPath
パスがここで構築されているようです。カスタムモジュールからバリアンファイルをオーバーライドできないので、ファイルを
app/code/local/Varien/File/Uploader.php
にコピーする必要があります。そこでパスのビルドの方法を変更できます。しかし、これはその場合の製品に影響を与えるだけではありません。単なる製品への変更の範囲をカスタムモジュールから上書きすることをお勧めします。したがって、
Mage_Catalog_Model_Product_Attribute_Backend_Media::addImage
でMage_Core_Model_File_Uploader::getDispretionPath
を呼び出す代わりに、その行を変更してパスを返すためのカスタムメソッドを呼び出したいと思うかもしれません。