L'URL de l'image que vous avez fournie est impossible à obtenir avec un magasin Magento. J'imagine que vous vouliez que ce soit obscurci, mais cela a rendu impossible toute réponse.
Je ne vois aucune raison de déconstruire le chemin de l'image à moins de gratter un autre site Web sur le Web. Dans le cas contraire, vous auriez un accès direct au modèle de produit et pourriez récupérer directement ces informations.
Néanmoins, en utilisant un exemple réel. Par exemple
/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/m/e/me-d1_2.jpg
De construire le chemin de l'image du cache
/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/m/e/me-d1_2.jpg
|___________________________|_|_____|________________________________|_|_|__________|
| | | | | | |
Cache Directory | | | | | |
Mage/Catalog/Model/Product/Media/Config.php | | | |
getBaseMediaPath() | | | | | |
| | | | | |
| | | | | |
Store ID | | | |
Mage::app()->getStore()->getId() | | |
| | | | |
| | | | |
Subdirectory | | | |
Mage/Catalog/Model/Product/Image.php | | |
getDestinationSubdir() | | | |
| | | |
| | | |
MD5 of Image Params | | |
See below | | |
Mage/Catalog/Model/Product/Image.php
Line +324 | | |
| | |
| | |
First letter of Image Name
| |
| |
Second letter of Image Name
|
|
Original Image Name
Localisation de l'image d'origine
Si téléchargé via l’administrateur de Magento , l’image originale se trouve à,
/media/catalog/product/m/e/me-d1_2.jpg
Donc, obtenir l'URL d'origine est assez facile, il suffit de supprimer le chemin du répertoire de cache et le hachage.
C'est à dire. Retirercache/1/image/9df78eab33525d08d6e5fb8d27136e95/
Alors
/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/m/e/me-d1_2.jpg
Devient
/media/catalog/product/m/e/me-d1_2.jpg
Si téléchargé via dataflow / import , l'image originale se trouve dans
/ media / import
Mais au-delà, il y aurait des conjectures. Cependant, les utilisateurs souhaitent formater leur répertoire de téléchargement pour l'importation, c'est leur choix et le sous-répertoire dans lequel les images se trouvent n'a vraiment aucune pertinence, car ils fournissent le chemin d'accès relatif à l'image lors du téléchargement.
Un peu sur le md5 Hash
($this->_keepAspectRatio ? '' : 'non') . 'proportional',
($this->_keepFrame ? '' : 'no') . 'frame',
($this->_keepTransparency ? '' : 'no') . 'transparency',
($this->_constrainOnly ? 'do' : 'not') . 'constrainonly',
$this->_rgbToString($this->_backgroundColor),
'angle' . $this->_angle,
'quality' . $this->_quality,
Arguments optionnels s'il y a un filigrane
$this->getWatermarkFile(),
$this->getWatermarkImageOpacity(),
$this->getWatermarkPosition(),
$this->getWatermarkWidth(),
$this->getWatermarkHeigth()
md5(implode('_', $miscParams));
Donc, par exemple, avec les valeurs par défaut
md5('non_no_no_not_ffffff_0_90')
Le md5
hachage pourrait être le même sur tout le site - pour chaque image, mais vous auriez besoin de déterminer les valeurs utilisées pour le générer. Vous pouvez le forcer assez facilement.
C'est la valeur par défaut de Magento pour le hachage
9df78eab33525d08d6e5fb8d27136e95
Attributions: sonassi.com