Я столкнулся с проблемой добавления/удаления изображения в продукт программно.
Добавить/удалить изображение программно в продукт Magento2
Ответы (1)
Используйте следующий код, чтобы добавить/удалить изображение из продукта в Magento2.
// Instance of object manager
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
*Remove Images From Product*/
$productId = ; // Id of product
$product = $objectManager->create('Magento\Catalog\Model\Product')->load($productId);
$productRepository = $objectManager->create('Magento\Catalog\Api\ProductRepositoryInterface');
$existingMediaGalleryEntries = $product->getMediaGalleryEntries();
foreach ($existingMediaGalleryEntries as $key => $entry) {
unset($existingMediaGalleryEntries[$key]);
}
$product->setMediaGalleryEntries($existingMediaGalleryEntries);
$productRepository->save($product);
/*Add Images To The Product*/
$imagePath = "sample.png"; // path of the image
$product->addImageToMediaGallery($imagePath, array('image', 'small_image', 'thumbnail'), false, false);
$product->save();
person
Datta Yadav
schedule
26.10.2016
Хорошо, я постараюсь внести изменения в соответствии с приведенным выше кодом. Спасибо за ваш ответ.
- person Nitesh; 26.10.2016
я пробую это решение, мое изображение удаляется хорошо, и добавление изображения также работает хорошо, но оно не установлено как базовое маленькое и миниатюрное
- person Newbie; 25.11.2016
$attributeImage = массив('изображение', 'маленькое_изображение', 'миниатюра'); $product = Mage::getModel('каталог/продукт')-›load($product_id); $product-›addImageToMediaGallery($file, $attributeImage, true,false); $продукт-›сохранить(); Пожалуйста, попробуйте это, это может вам помочь.
- person Datta Yadav; 25.01.2017
Я использовал тот же код, и он отлично работает, когда есть только одно представление магазина. Но если у нас есть несколько просмотров магазина, он не сможет удалить изображения.
- person Indian; 22.11.2018
как получить путь к изображению?
- person HaFiz Umer; 15.07.2019