WordPress currently supports importing data in the form of posts (articles) and most of the details or features supported by the content publishing platform.
Many of the following Content Import scripts can be found under Tools → Import menu of your WordPress administration interface.
If you run into specific problems, a search on the WordPress Support Forum will likely lead to a solution, or try the Codex FAQ. Users of a blogging system not listed here who wish to switch to WordPress are invited to ask for help in the WordPress Support Forum as well.
If your exported file is very large, the import script may run into your host's configured memory limit for PHP.
A message like "Fatal error: Allowed memory size of 8388608 bytes exhausted" indicates that the script can't successfully import your XML file under the current PHP memory limit. If you have access to the php.ini file, you can manually increase the limit; if you do not (your WordPress installation is hosted on a shared server, for instance), you will have to break your exported XML file into several smaller pieces and run the import script one at a time.
If the import process is run again with the same data file after stopping midway through, it could result in duplicate data, missing data or other errors in the destination database.
For those with shared hosting, the best alternative may be to consult hosting support to determine the safest approach for running the import. A host may be willing to temporarily lift the memory limit and/or run the process directly from their end.
The script for importing b2 posts to WordPress was included in the versions up to 1.5.2 (wordpress/wp-admin/import-b2.php).
There are several methods of importing a b2evolution install into WordPress described in this section.
Direct Import Between Databases
Import via Movable Type Export Format
A second approach is to re-skin a b2evolution blog so that when its source is viewed it appears to be in the Movable Type export format. This approach, which should work for all versions of WordPress, and all recent versions of b2evolution is described in full on this page.
For WordPress v3 and higher
A third approach is to us a script that imports b2evolution blogs, categories, posts, comments, files and users into existing WordPress installation. This is an easy way to migrate a complete b2evolution install into WordPress. Note that this requires payment. BIMP Importer script.
Users of WordPress 2.2 and above can import from Blogger. Earlier versions cannot import from Blogger because "New Blogger" was released by Google, invalidating all the old importers. Only WordPress 2.2 and later has support for "New Blogger".
If you haven't already, you must be using New Blogger and a Google Account on Blogger. If you are still using Old Blogger, the importer will not work, but there is a helpful online tool that converts legacy Blogger Atom exports into WordPress WXR export files.
To start the Blogger importer, go to Tools → Import → Blogger.
For WordPress versions 2.0.2 to 2.6.5, go to Manage → Import → Blogger.
Also see the Google Blog Converters section below.
To start the Blogware importer, go to Tools → Import → Blogware.
For WordPress versions 2.0.2 to 2.6.5, go to Manage → Import → Blogware.
Delicious XML Import plugin for WordPress
To start the Dotclear importer, go to Tools → Import → Dotclear.
For WordPress versions 2.0.2 to 2.6.5, go to Manage → Import → Dotclear.
There is a dedicated e107 Importer plugin available on WordPress official plugin repository. See there for the list of features.
Gallery2 Importer plugin for WordPress
To start the Greymatter importer, go to Tools → Import → Greymatter.
For WordPress versions 2.0.2 to 2.6.5, go to Manage → Import → Greymatter.
There is a script originally by Omar Bazavilvazo for jaws 0.5.x to WP 2.x, it was then maintained in github by vicm3 this works getting the jaws.php file drop on import directory and going to tools/import.
There's a script that allows to import entries and comments from Jogger.pl - Polish, Jabber-powered weblog system. Comments and manual are in Polish (since Jogger is mostly polish), but if you have any questions, feel free to ask in comments on author's blog.
To start the LiveJournal importer, install the LiveJournal Importer Plugin.
Also see the Google Blog Converters section below.
If you can't use the current API-based importer for some reason, you need to setup a separate install of an older version of WordPress (v2.7 for example) and follow the instructions below.
See the Joomla section.
To start the Movable Type importer, go to Tools → Import → Movable Type and TypePad.
For WordPress versions 2.0.2 to 2.6.5, go to Manage → Import → Movable Type.
Also see the Google Blog Converters section below.
These are brands of the blog hosting provider Tipic Inc.
There is a script: Importing posts from Pivot 1.2 with *Linux* server to WordPress
There is another script, which has been updated to work with WordPress 2.0: Pivot importer for WordPress. It tries to preserve users and categories.
However, Pivot also has an excellent RSS support and that WordPress can import RSS. Example.
An article on how to migrate Plone content into Wordpress via Movable Type format.
Conversion script to migrate Postnuke 0.75+ to WordPress 2.5+ Taxonomy Migrate from PostNuke to Wordpress. Detailed wizard to migrate topics, sections, posts & users.
You can fairly easily import data from Roller using the MovableType import script. First, you need to export your blog from Roller database, then use it to create entries in your new blog. Pictures you need to copy to appropriate content directory yourself. Modify the $user, $oldresources, $newresources, and $connection variables in a beginning of script, store it on somewhere on you web host where php execution is allowed, and you will get the dump of your Roller blog in MovableType Import format in return. You can just use wget to store it into file. Then follow the instructions for MovableType import...
The script for importing Textpattern CMS posts into your WordPress blog is located at wp-admin/import-textpattern.php.
Another script may be found on the WordPress Forum on this forum thread.
(Update March 31, 2007) The WordPress textpattern.php import script seems to be buggy. Therefore, another script (hack of the included one included in WordPress) and step-by-step importing instructions are to be found over here.
Tumblr has no export feature. You can import its RSS feed, or try one of the migration tools below.
Twitter has no export feature. There are several plugins to import your tweets into WordPress, such as Ozh' Tweet Archiver
The Importing from Movable Type to WordPress works for TypePad blogs, too. The only difference is in the process of exporting entries from the TypePad blog. Once you have the exported entries, follow the instructions in Importing from Movable Type to WordPress to complete the import into WordPress.
There are some plugins for importing vCard users into WordPress.
To import from a WordPress export file into a WordPress blog follow these steps.
xanga.r is a program that parses xanga pages to get the post and comments. Then it can output them in the WordPress rss 2.0 xml format for WordPress to import.
If you had paid for Xanga Premium and saved your archive files before switiching to WordPress, an importer can be found here.
These are the instructions to import your posts from Zoomblog:
It imports all posts and comments, and creates new categories, though, unfortunately, there's no way to figure out the proper category name, so you'll have to edit them afterwards. It does not deal with multiple authors.
2.0 introduced this as an option in the Admin menu under "Import".
First, save the RSS feed you wish to import someplace on your local machine. This would be the source and would come from the site that has the content you wish to import into your WP blog. A simple way to get the feed into a text file is to find the RSS link for that site, click it and view it in your browser, then copy/paste that to a text file. Or, of course, use your preferred tools.
Click the "Browse" button and navigate to the file containing the feed you wish to import and click "Import" to let it run.
Note: Depending on the feed and format, you may not get the entire thing loaded on the first attempt. One option is to determine how much got imported (Manage -> Posts) and remove those sections from your saved RSS file and then re-import. Lather, rinse, repeat as necessary.
Note that newlines will be converted to <br />. Therefore be sure there is no newlines between any <p>..</p>s.
WordPress also has a generic RSS importer, which you can find in your WordPress source at wp-admin/import-rss.php. If your current blogging system can export in a valid RSS format, you can import that into WordPress.
Importing the RSS data is done by running the import-rss.php script from the server. For security reasons you have to edit the script to point to the file where the RSS data is stored.
If you have your blog at http://example.com, you can place your file, for example oldblog.xml, in the wp-admin directory on your site.
Edit import-rss.php by changing the value of RSSFILE in the beginning of the script. After you have changed this, run the script by accessing the script with your browser, in this case you’ll go to http://example.com/wp-admin/import-rss.php.
If the script finds your file, a link marked Begin RSS Import occur, and by pressing this link the import will start.
The RSS data are now imported, and you can remove the RSS file and restore the script.
Using trial and error one can make an e.g., perl script to concatenate [X]HTML files as RSS <item>s, saving into a single file.xml, then import that as RSS. Note however to first remove any newlines between <p>..</p>s, as mentioned above.
The format allowed is quite simple in fact. Just make each HTML file into an <item> as below and concatenate them together:
<item> <pubDate>Wed, 30 Jan 2009 12:00:00 +0000</pubDate> <category>Kites</category> <category>Taiwan</category> <title>Fun times</title> <content:encoded><p>What great times we had...</p><p>And then Bob...</p></content:encoded> </item> <item>...
Just be sure the <content:encoded> line is a single long line with no newlines embedded.
If your HTML is well-formed, you can try using the Import HTML plugin.
A discussion in February 2011 on the wp-hackers email list involved importing 6,000 static pages into WordPress. A number of responses recommended using the PHP Simple HTML DOM Parser to facilitate the porting of the pages.
In case the above methods don't work, you can try Google Blog Converters.
This tool can convert Blogger export into WordPress format. It also supports conversion from Movable Type & LiveJournal to Blogger format. You can take the Blogger format then convert it again into WordPress format.