What is this?
I found the WordPress Importer plugin is good for importing posts and comments, but is lacking when it comes to importing large attachments (like images) from large sites. My import would often time out and crash. I wrote this plugin to help with my own blog migrations, but I hope you find it useful too.
- As a prerequisite, import your WXR file using the WordPress importer, but do not select the option to Download and Import Attachments. I have found that an import file up to 15MB big will work as long as you don’t import attachments.
- Navigate to the Attachment Importer screen.
- Select your WXR export file.
- Select the user you would like to be the owner of the downloaded images. Default: current user.
- Sit back and let the importer run. The process can take as little as 10 seconds for 10 images, or about two hours for 2000 images. These times depend on the server that hosts your WordPress site.
- If you receive any errors during the process, try running the file again after it finishes. The plugin is programmed to ignore files that match the following criteria:
- Same name
- Same file name
- Same upload date
- Same file size
How it works.
This plugin uses FileReader and to parse the XML file in the browser, then uses ajax to request WordPress perform individual uploads.
Attachment Importer – A plugin for WordPress to import attachments from another blog using a WXR file.
Copyright (C) 2014 Toasted Lime
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
The license and copyright applies to all resources bundled with this plugin, except as noted below:
Portions of this plugin use code from:
- WordPress Importer which is distributed under the terms of the GNU GPL v2, Copyright (C) 2013 wordpressdotorg.
- jQuery UI Smoothness Theme which is distributed under the terms of MIT License, Copyright (C) 2014 jQuery Foundation and other contributors.
Should not get “Remote server did not respond” as often.
- Invalid file type produces non-fatal error.
- Added an overall progress bar.
- Improve how the program responds to events like fatal errors, AJAX failure, or if there are no attachments in the import file.
- Fixed issue reading namespaces in import file that caused the program not to work in FireFox and Internet Explorer.
- Moved plugin to Import menu from the Media menu.
- Added option to add five second delay between image ajax requests
- Reformat Readme
- Added jQuery tooltip
I`ve been searching for a solution to deal with faulty demo content importing processes, and the Attachment Importer plugin works flawlessly! Literally, it saved me hours of work! What I would love to see though is an update, just to get rid of that "2 years" notice from the plugin page.
At this point the WordPress Importer plugin is more broken than ever. It wouldn't import attachments during a standard operation. With debugging turned on it throws the error:
Notice: wp_get_http is deprecated since version 4.4.0! Use WP_Http instead. in /wp-includes/functions.php on line 3707The various fixes and hacks out there didn't work either. This did.