In the past, we’ve talked a lot about how to move your website to WordPress. We’ve covered how to migrate your site from Drupal and Joomla, and even how to move a WordPress site between hosts. And while most of the time these transfers go off without a hitch…you might run into some issues with media every once in a while, which is why it’s important to know how to bulk import images into WordPress.
In this article, we’ll introduce you to the scenarios where you might need to import images into WordPress in bulk, and then we’ll teach you how to do it. Let’s get started!
Why you might need to import images into WordPress
First off, it’s important to know that in many cases you won’t need to import images into WordPress manually. This step will often be handled by whatever tool or process you use to move the rest of your site. However, it always pays to be prepared in case your migration doesn’t go as planned:
In our experience, image import errors usually occur while migrating your WordPress website from one host to another. With that in mind, if you’re using a tool to move your website, you definitely should double-check whether your images display correctly afterwards.
If you’re moving a WordPress site from one host to another, we recommend that you stick with the Duplicator plugin. It’s designed to make migrations simple, and we’ve yet to run into any image issues while using it.
However, if you’ve already migrated your site and found that your images aren’t showing up properly, read on.
How to import images into WordPress (in three simple steps)
Ideally, you should always back up your site before moving it or migrating from another platform. If you skipped that step, do so now.
This is also a good time to mention that you’ll need to use an FTP client throughout this guide. If you don’t have one installed, we recommend that you try out FileZilla (it’s both reliable and open-source).
Finally, it’s worth noting that some other online guides recommend using the Import External Images plugin to take care of this process. However, that plugin hasn’t been updated in a long time, and there aren’t many other options out there, which is why we decided to stick with the tried-and-true manual method.
Step #1: Download your images using an FTP client
After accessing your WordPress site via FTP, you’ll want to locate your root directory, which is usually named
www. Then head to
As its name implies, this is the folder that stores all the media files you’ve uploaded to WordPress. To find your images, you’ll want to look for folders that are named after years. For example, in the image above, we have two such folders: 2016 and 2017. As you can probably guess, they each contain the media files uploaded during their respective years (organized by months).
Now, all you have to do is copy those image files over to your computer. You can do this by selecting the folders you want, right-clicking on them, and choosing the option that says Download:
Then sit back and wait for your files to fully download before moving on to the next step.
Step #2: Upload your images to your new WordPress site
Your next move is to upload the folders containing your images to your new WordPress site. To do this, you’ll need to log into your new site via FTP (make sure you don’t mix up your credentials here!).
Once you’re in, you’ll want to make your way back to the
wp-content/uploads/directory. Drag the folders you downloaded over to
uploads/ and wait for FileZilla to upload them:
Now, there are several possible outcomes at this stage. If none of your images were imported earlier during the site migration process, then no warnings should pop up as you upload them now. On the other hand, if you managed to import only a few of your images while moving your site, FileZilla will ask you whether you want to replace them while it’s performing the upload. Either way, you should be fine if you choose to simply replace all your media files as they are uploaded.
After FileZilla has done its job, all that’s left is to make sure your images are displaying correctly.
Step #3: Use the Search & Replace plugin to fix your image URLs
Depending on which migration tool you used when moving your site, it’s possible that it may have already replaced your old internal links with your new URLs. If so, your images should display correctly after Step #2.
If the issue isn’t fixed yet, however, this means you’ll also have to update all your internal links so they don’t point towards the old site. WordPress inserts images using HTML code, which means it uses URLs. Instead of digging through your archives and replacing each address manually, we’re going to use the Search & Replace plugin:
This plugin does exactly what its name implies – it enables you to look within your site for instances of a specific phrase or URL and replace them with something else. Fortunately, Search & Replace is very simple to use. All you have to do is install and activate it, then go to Tools > Search & Replace in your dashboard and find the tab named after the plugin.
Inside, look for the fields called Search for and Replace with. Enter your old domain in the first field, and your new domain in the second field, like this:
Then tick the box that reads Select all tables to make sure you don’t miss any images, and select Do Search & Replace. Once the plugin has done its work, your old URL will be removed and your imported images should display perfectly.
Moving your WordPress website isn’t that complicated, but there are a few parts that can cause you to stumble. For example, importing your images doesn’t always work the way it should, because of how much space they tend to take up. That’s why it pays off to know how to transfer your files manually in case something goes wrong with the process.
Here are the three steps you’ll need to follow to import images into WordPress manually:
- Download your images using an FTP client.
- Upload your images to your new WordPress site.
- Use the Search & Replace plugin to fix your image URLs.
Do you have any questions about the process of importing images into WordPress? Ask away in the comments section below!