Skip to main content

Magento 2 Update product image attributes value using custom script programetically

Magento 2 Update product image programetically

 <?php  
 //increase the max execution time  
 @ini_set('max_execution_time', -1);  
 //memory_limit  
 @ini_set('memory_limit', -1);  
 error_reporting(E_ALL);  
 ini_set('display_errors', '1');  
 use \Magento\Framework\App\Bootstrap;  
 require __DIR__ . '/app/bootstrap.php';  
 $bootstrap = Bootstrap::create(BP, $_SERVER);  
 $objectManager = $bootstrap->getObjectManager();  
 $instance = \Magento\Framework\App\ObjectManager::getInstance();  
 $state = $objectManager->get('\Magento\Framework\App\State');  
 $state->setAreaCode('frontend');  
 $product_collections = $instance->get('\Magento\Catalog\Model\ResourceModel\Product\CollectionFactory');  
 $collections = $product_collections->create();  
 foreach ($collections as $product)  
 {  
   if ($product->getId() == 2052)  
   {  
     $product = $objectManager->create('\Magento\Catalog\Model\Product')  
       ->load($product->getId());  
     $images = $product->getMediaGalleryImages();  
     $image = $images->getFirstItem();  
     $imageUrl = $image->getFile();  
     echo $imagePath = '/pub/media/catalog/product' . $imageUrl;  
     $product->setStoreId(0);  
     $product->setImage($imageUrl);  
     $product->setSmallImage($imageUrl);  
     $product->setThumbnail($imageUrl);  
     $product->save();  
     echo "Done";  
     die;      
   }  
 }  
 ?>  


Comments

Popular posts from this blog

Magento 2: How to use redirect URl in Router.php

Module name - **Aks_CustomUrlRouter** You have to create below listed files 1. Registration.php :: app/code/Aks/CustomUrlRouter/registration.php <?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Aks_CustomUrlRouter', __DIR__ ); ?> 2. Module.xml :: app/code/Aks/CustomUrlRouter/etc/module.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd"> <module name="Aks_CustomUrlRouter" setup_version="2.0.0"></module> </config> 3. di.xml :: app/code/Aks/CustomUrlRouter/etc/di.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">

Magento 2 get category collection using specific controllers and category level using object manager

Magento 2 get category collection using object manager <?php $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $category = $objectManager->get('Magento\Framework\Registry') ->registry('current_category'); //get current category $requestInterface = $objectManager->get('Magento\Framework\App\RequestInterface'); //echo $routeName = $requestInterface->getRouteName(); //echo $moduleName = $requestInterface->getModuleName(); $controllerName = $requestInterface->getControllerName(); //echo $actionName = $requestInterface->getActionName(); $parcatId = $category->getId(); // current Category ID $parcategory = $objectManager->create('Magento\Catalog\Model\Category') ->load($parcatId); $parent_category = $parcategory->getParentCategory(); $subcatId = $parent_category->getId(); $subcategory = $objectManager->create('Magento\Catalog\Model\Category

Magento 2 check category attribute values in database using mysql query

Magento 2 check category attribute in database using mysql quer SELECT * FROM `catalog_category_entity_text` where store_id = 1; SELECT * FROM `catalog_category_entity_datetime` where store_id = 1; SELECT * FROM `catalog_category_entity_decimal` where store_id = 1; SELECT * FROM `catalog_category_entity_int` where store_id = 1; SELECT * FROM `catalog_category_entity_varchar` where store_id = 1; Note : In above SQL query store_id 1 is ID of store. kindly you need to check store Id for all store-views in admin and run the above code for each store-views separately.