Méthode la plus rapide pour supprimer l'image, puis suivez les étapes ci-dessous: supprimez tous les enregistrements de
catalog_product_entity_media_gallery
catalog_product_entity_media_gallery_value'
car Magento enregistre toutes les données d'image du produit dans ces tables.
Puis indexez à partir de la gestion d'index de l'administrateur pour définir l'image en noir.
Ensuite, supprimez l'image from dir
puis passez à votre media/catalog/product
répertoire magento dans et à partir de ce dossier, supprimez tous les fichiers.
Un autre processus:
Andy Simpson, vous avez besoin d'un script is delete all product
qui partira de votre système delete from DB and file system
.
Étape 1: Créez a php
à root direct of magento system
laquelle inclure Mage.php at first code
.
require_once "YOURMAGENTODIR/app/Mage.php";
umask(0);
Étape 2: définir l' current store is
administrateur et définir le mode développeur
Mage::app('admin');
Mage::setIsDeveloperMode(true);
Étape 3: Obtenez Product Collection
et créez une boucle pour obtenir un produit un par un
$productCollection=Mage::getResourceModel('catalog/product_collection');
Étape 4: récupérez l'image du produit par un et supprimez l'image une en utilisant le code ci-dessous:
$remove=Mage::getModel('catalog/product_attribute_media_api')->remove($product->getId(),$eachImge['file']);
CODE COMPLET:
<?php
require_once "YOURMAGENTODIR/app/Mage.php";
umask(0);
Mage::app('admin');
Mage::setIsDeveloperMode(true);
$productCollection=Mage::getResourceModel('catalog/product_collection');
foreach($productCollection as $product){
echo $product->getId();
echo "<br/>";
$MediaDir=Mage::getConfig()->getOptions()->getMediaDir();
echo $MediaCatalogDir=$MediaDir .DS . 'catalog' . DS . 'product';
echo "<br/>";
$MediaGallery=Mage::getModel('catalog/product_attribute_media_api')->items($product->getId());
echo "<pre>";
print_r($MediaGallery);
echo "</pre>";
foreach($MediaGallery as $eachImge){
$MediaDir=Mage::getConfig()->getOptions()->getMediaDir();
$MediaCatalogDir=$MediaDir .DS . 'catalog' . DS . 'product';
$DirImagePath=str_replace("/",DS,$eachImge['file']);
$DirImagePath=$DirImagePath;
// remove file from Dir
$io = new Varien_Io_File();
$io->rm($MediaCatalogDir.$DirImagePath);
$remove=Mage::getModel('catalog/product_attribute_media_api')->remove($product->getId(),$eachImge['file']);
}
}
La déclaration mysql complète pour la réponse d'Amit est
la source
Je ne pense pas qu'il existe une solution rapide à ce problème, sauf si vous pouvez réimporter tous vos produits à partir d'une exportation de sauvegarde avec les données d'image correctes.
Vous pouvez utiliser un script PHP pour parcourir tous vos produits et supprimer les médias. Jetez un œil à /programming/5709496/magento-programmatically-remove-product-images pour plus d'informations.
Vous pouvez supprimer / média / catalogue / produit / et restaurer en toute sécurité si vous avez une sauvegarde de travail avec les fichiers d'image corrects.
la source
Je l'habitude de Kevando sur magento 2.2.7, mais lorsque l'importation d'images à nouveau ne sera pas exactement. Voici donc mes réponses, ce sera testé.
la source
Merci "Amit Bera", cela m'a sauvé la journée et fonctionne bien
J'ai simplement suivi la procédure ci-dessous pour supprimer toutes les images de produits.
Méthode la plus rapide pour supprimer l'image, puis suivez les étapes ci-dessous: supprimez tous les enregistrements de
catalog_product_entity_media_gallery table catalog_product_entity_media_gallery_value 'car magento enregistre toutes les données d'image du produit dans cette table.
Puis indexez à partir de la gestion d'index de l'administrateur pour définir l'image en noir.
Ensuite, supprimez l'image du répertoire, puis passez à votre répertoire magento dans le dossier media / catalog / product et supprimez tous les fichiers de ce dossier.
la source