How To

Magento 2: How to Move Specific Extension Image Files to Magento Media Folder Programmatically?

Hello Magento Friends,

In today’s blog, I will give you the solution for How to Move Specific Extension Image Files to Magento Media Folder Programmatically in Magento 2.

Images are an integral part of a website. If you want to move specific image files to the media folder in Magento 2, you can do it programmatically.

Steps to Move Specific Extension Image Files to Magento Media Folder Programmatically in Magento 2:

Here we will use the root script to move specific extension image files to the Magento media folder programmatically in Magento 2.

Step 1: Create a file in your Magento root directory at the below path

magento_root_directory\Moveimagefile.php

Now add the code as follows

<?php
use Magento\Framework\AppInterface;
try
{
    require_once __DIR__ . '/app/bootstrap.php';
} 
catch (\Exception $e) 
{
    echo 'Autoload error: ' . $e->getMessage();
    exit(1);
}
try
{
 $bootstrap = \Magento\Framework\App\Bootstrap::create(BP, $_SERVER);
 $objectManager = $bootstrap->getObjectManager();
 $appState = $objectManager->get('\Magento\Framework\App\State');
 $appState->setAreaCode('frontend');
  
  $directoty = $objectManager->get('Magento\Framework\Filesystem\Io\File');
        $Dirreader = $objectManager->get('Magento\Framework\Module\Dir\Reader');
 $viewDir = $Dirreader->getModuleDir(
                \Magento\Framework\Module\Dir::MODULE_VIEW_DIR,
                'Vendor_Extension'
            );
 $filesystem=$objectManager->get('Magento\Framework\Filesystem');
    
  $srcDir=$viewDir.'/Customfoldername';
  $reader = $filesystem->getDirectoryRead(\Magento\Framework\App\Filesystem\DirectoryList::MEDIA);
        $destDir = $reader->getAbsolutePath('/Customfoldername');
        
         if (file_exists($destDir))
         {
    if (is_dir($destDir)) 
    {
       if (is_writable($destDir)) 
       {
          if ($handle = opendir($srcDir)) 
          {
                    while (false !== ($file = readdir($handle))) 
                          {
        if (is_file($srcDir . '/' . $file)) 
        {
          rename($srcDir . '/' . $file, $destDir . '/' . $file);
         }
             }
             closedir($handle);
             echo "All Images is Move Successfully";
          } 
          else 
          {
            echo "$srcDir could not be opened.\n";
         }
       } 
       else
       {
          echo "$destDir is not writable!\n";
      }
        } 
        else 
        {
      echo "$destDir is not a directory!\n";
        }
 } 
 else 
 {
    echo "$destDir does not exist\n";
 }  
}
catch(\Exception $e)
{
 echo "Error : ".$e->getMessage();
}
?>

Conclusion:

Hence, this way, you can Move Specific Extension Image Files to Magento Media Folder Programmatically in Magento 2. To improve store performance, you Optimize Images of your Magento 2 store.

Stay updated with us!

Happy Coding!

Click to rate this post!
[Total: 2 Average: 5]
Dhiren Vasoya

Dhiren Vasoya is a Director and Co-founder at MageComp, Passionate 🎖️ Certified Magento Developer👨‍💻. He has more than 9 years of experience in Magento Development and completed 850+ projects to solve the most important E-commerce challenges. He is fond❤️ of coding and if he is not busy developing then you can find him at the cricket ground, hitting boundaries.🏏

Recent Posts

Magento 2: Add Quantity Increment and Decrement on Category Page

Hello Magento Friends, In this blog, we will discuss about adding quantity increment and decrement…

18 hours ago

How to Integrate ChatGPT with Laravel Application?

In this guide, we'll explore how to integrate ChatGPT, an AI-powered chatbot, with a Laravel…

4 days ago

What are Net Sales? How to Calculate Your Net Sales?

In the world of business, understanding financial metrics is crucial for making informed decisions and…

6 days ago

Magento 2 Extensions Digest April 2024 (New Release & Updates)

Welcome to the MageComp Monthly Digest, where we bring you the latest updates, releases, and…

6 days ago

The ABCs of Geofencing: Definition, Features and Uses

In this era, businesses are always on the lookout for ways to engage with their…

7 days ago

How to Delete Product Variant in a Shopify Remix App using GraphQL Mutations?

Managing a Shopify store efficiently involves keeping your product catalog organized. This includes removing outdated…

1 week ago