Answers:
删除图像的最快方法,然后按照以下步骤操作:从中删除所有记录
catalog_product_entity_media_gallery
catalog_product_entity_media_gallery_value'
表,因为magento会将所有产品图像数据保存在那些表中。
然后从管理员的索引管理中为设置的图像黑色编制索引。
然后删除图像,from dir
然后转到media/catalog/product
此文件夹中的magento目录并从中删除所有文件。
安迪·辛普森(Andy Simpson),您需要一个is delete all product
从系统中执行的脚本delete from DB and file system
。
第一步:创建a php
于root direct of magento system
包括Mage.php at first code
。
require_once "YOURMAGENTODIR/app/Mage.php";
umask(0);
第二步:设置current store is
管理员并设置开发人员模式
Mage::app('admin');
Mage::setIsDeveloperMode(true);
第三步:获取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']);
}
}
我认为没有快速解决方案,除非您可以使用正确的图像数据从备份导出中重新导入所有产品。
您可以使用PHP脚本遍历所有产品并删除媒体。请查看/programming/5709496/magento-programmatically-remove-product-images了解更多信息。
如果使用正确的映像文件进行了有效的备份,则可以安全地删除/ media / catalog / product /并进行还原。
我曾经在magento 2.2.7上使用过Kevando,但是再次导入图像时并不会完全一样。这是我的答案,已经过测试。
SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE catalog_product_entity_media_gallery;
TRUNCATE TABLE catalog_product_entity_media_gallery_value;
TRUNCATE TABLE catalog_product_entity_media_gallery_value_to_entity;
SET FOREIGN_KEY_CHECKS = 1;
谢谢“阿米特·贝拉”,这节省了我的时间,而且工作正常
我只是按照以下过程删除了所有产品图像。
删除图像的最快方法,然后按照以下步骤操作:从中删除所有记录
catalog_product_entity_media_gallery catalog_product_entity_media_gallery_value'表,因为magento将所有产品图像数据保存在这些表中。
然后从管理员的索引管理中为设置的图像黑色编制索引。
然后从目录中删除图像,然后转到位于media / catalog / product的您的magento目录,然后从该文件夹中删除所有文件。