Der schnellste Weg, um ein Bild zu entfernen, und führen Sie dann die folgenden Schritte aus: Löschen Sie alle Datensätze aus
catalog_product_entity_media_gallery
catalog_product_entity_media_gallery_value'
Tabelle, da Magento alle Produktbilddaten in dieser Tabelle speichert.
Dann Index aus der Indexverwaltung vom Administrator für das eingestellte Bild schwarz.
Entfernen Sie from dir
dann das Bild und gehen Sie zu Ihrem Magento- media/catalog/product
Verzeichnis. Löschen Sie alle Dateien aus diesem Ordner.
Ein anderer Prozess:
Andy Simpson, du brauchst ein Skript welches is delete all product
von deinem System was wird delete from DB and file system
.
Schritt 1: Erstellen Sie a php
mit root direct of magento system
welchem Include Mage.php at first code
.
require_once "YOURMAGENTODIR/app/Mage.php";
umask(0);
Schritt 2: Stellen Sie den current store is
Administrator und den Entwicklermodus ein
Mage::app('admin');
Mage::setIsDeveloperMode(true);
Schritt 3: Holen Sie sich Product Collection
eine Schleife und erstellen Sie sie, um ein Produkt nach dem anderen zu erhalten
$productCollection=Mage::getResourceModel('catalog/product_collection');
Schritt 4: Rufen Sie das Produktbild nacheinander ab und entfernen Sie das erste Bild mit dem folgenden Code:
$remove=Mage::getModel('catalog/product_attribute_media_api')->remove($product->getId(),$eachImge['file']);
VOLLSTÄNDIGER CODE:
<?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']);
}
}
Die vollständige MySQL-Erklärung für Amits Antwort lautet
quelle
Ich glaube nicht, dass es eine schnelle Lösung dafür gibt, es sei denn, Sie können alle Ihre Produkte aus einem Backup-Export mit den richtigen Image-Daten erneut importieren.
Sie können ein PHP-Skript verwenden, um alle Ihre Produkte zu durchlaufen und die Medien zu entfernen. Hier finden Sie aktuelle /programming/5709496/magento-programmatically-remove-product-images für weitere Informationen.
Sie können / media / catalog / product / sicher löschen und wiederherstellen, wenn Sie über ein funktionierendes Backup mit den richtigen Image-Dateien verfügen.
quelle
Ich habe Kevando auf Magento 2.2.7 verwendet, aber beim erneuten Importieren von Bildern nicht genau. Das sind also meine Antworten, die getestet werden müssen.
quelle
Danke "Amit Bera", es hat meinen Tag gerettet und funktioniert gut
Ich habe nur das folgende Verfahren befolgt, um alle Produktbilder zu löschen.
Der schnellste Weg, um ein Bild zu entfernen, und führen Sie dann die folgenden Schritte aus: Löschen Sie alle Datensätze aus
catalog_product_entity_media_gallery catalog_product_entity_media_gallery_value 'Tabelle, da Magento alle Produktbilddaten in dieser Tabelle speichert.
Dann Index aus der Indexverwaltung vom Administrator für das eingestellte Bild schwarz.
Entfernen Sie dann das Bild aus dir und gehen Sie zu Ihrem Magento-Verzeichnis unter media / catalog / product und löschen Sie aus diesem Ordner alle Dateien.
quelle