Самый быстрый способ удалить изображение, затем выполните следующие действия: удалите все записи из
catalog_product_entity_media_gallery
catalog_product_entity_media_gallery_value'
таблица, потому что magento сохранить все данные изображения продукта в этих таблицах.
Затем индекс из управления индексами от администратора для установки изображения черного цвета.
Затем удалите изображение, from dir
затем media/catalog/product
перейдите в папку magento dir и из этой папки удалите все файлы.
Другой процесс:
Энди Симпсон, вам нужен скрипт, который is delete all product
из вашей системы будет delete from DB and file system
.
Шаг 1: Создайте, a php
на root direct of magento system
котором включают Mage.php at first code
.
require_once "YOURMAGENTODIR/app/Mage.php";
umask(0);
Шаг 2: установить current store is
администратора и установить режим разработчика
Mage::app('admin');
Mage::setIsDeveloperMode(true);
Шаг 3: Получить Product Collection
и создать цикл для получения одного продукта по одному
$productCollection=Mage::getResourceModel('catalog/product_collection');
Шаг 4: получить изображение товара по одному и удалить изображение, используя следующий код:
$remove=Mage::getModel('catalog/product_attribute_media_api')->remove($product->getId(),$eachImge['file']);
ПОЛНЫЙ КОД:
<?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']);
}
}
Полный текст MySQL для ответа Амит
источник
Я не думаю, что есть быстрое решение этой проблемы, если вы не можете повторно импортировать все ваши продукты из резервного копирования с правильными данными изображения.
Вы можете использовать скрипт PHP, чтобы просмотреть все ваши продукты и удалить носитель. Взгляните на /programming/5709496/magento-programmatics-remove-product-images для получения дополнительной информации.
Вы можете безопасно удалить / media / catalog / product / и восстановить, если у вас есть рабочая резервная копия с правильными файлами изображений.
источник
Я использовал Kevando на magento 2.2.7, но при импорте изображений снова не будет точно. Так что это мои ответы, это будет проверено.
источник
Спасибо "Amit Bera", он спас мой день и работает нормально
Просто я следовал приведенной ниже процедуре, чтобы удалить все изображения товара.
Самый быстрый способ удалить изображение, затем выполните следующие действия: удалите все записи из
catalog_product_entity_media_gallery catalog_product_entity_media_gallery_value 'таблица, поскольку magento сохраняет все данные изображения продукта в этой таблице.
Затем индекс из управления индексами от администратора для установки изображения черного цвета.
Затем удалите изображение из dir, затем перейдите в папку magento dir по адресу media / catalog / product и из этой папки удалите все файлы.
источник