Comment faire pour modifier le Magento structure de Répertoire pour les images lors de l'Importation

magento.stackexchange https://magento.stackexchange.com//questions/40004

Question

Ce que j'essaie de faire est de changer le dossier par défaut de la structure des images importées.Par exemple, lorsque vous importez une image de magento par défaut de la structure de répertoire pour la première et la deuxième lettre de l'image pour créer la structure de répertoire sous /media/catalog/product/X/Y/XYimage.jpg

Je veux être en mesure de modifier la base pour me permettre de le changer pour quelque chose comme:/media/catalog/product/SKU/XYZ/SKUXYZimage.jpg donc les 3 premières lettres sont le premier niveau du répertoire et les 3 lettres sont le deuxième niveau de l'annuaire.

Était-ce utile?

La solution 2

C'est une solution simple et juste testé plus de 60k produits.installer Magmi (Recherche Google).Accédez à \magmi\plugins\extra\itemprocessors\imageprocessor ouvert imageitattributeemprocessor.php avec votre éditeur de texte favori et remplacer 496 505 avec cette petite modification.

$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";

Comme vous pouvez le voir, j'ai choisi sur $impath pour définir ma structure comme "/$i1$i2$i3/$i4$i5$i6/$bimgfile" Traduit sku123456.jpg serait media/catalog/product/sku/123/sku123456.jpg Désolé pour le dessin grossier (je suis Nouveau à cela) Rappelez-vous toujours si vous mettez à niveau Magmi cela peut être par écrit afin de toujours sauvegarder vos fichiers.

Autres conseils

Backtracing le code

  1. Mage_Catalog_Model_Product::addImageToMediaGallery
  2. Mage_Catalog_Model_Product_Attribute_Backend_Media::addImage
  3. Varien_File_Uploader::getDispretionPath

Il semble que le chemin est à construire ici.Puisque vous ne pouvez pas remplacer un Varien fichier à partir d'un module personnalisé, vous devrez copier le fichier app/code/local/Varien/File/Uploader.php.Là, vous pouvez modifier la manière dont le chemin est à construire.

Toutefois, cela n'affecte pas seulement les produits dans cette affaire.Vous souhaiterez peut-être substituer Mage_Catalog_Model_Product_Attribute_Backend_Media::addImage à partir d'un module personnalisé pour limiter la portée des modifications apportées à des produits.Donc, au lieu de l'appeler Mage_Core_Model_File_Uploader::getDispretionPath sur la ligne 286 vous souhaiterez peut-être modifier cette ligne dans l'appel d'une méthode personnalisée pour le retour du chemin.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top