Stable release

6.x-2.2 is the current stable version. It's a complete rewrite of version 1.x, incorporating many bugfixes and new features :

Batch processing

CTools-based multistep form

XML stream-based processing allowing large blogs to be imported

Selectable content type and language for imported posts and pages

Possibility to disable importing of comments, categories and tags, and trackbacks

Possibility to preserve links using path aliases

Possibility to transfer images referenced in the posts into Drupal

Removal of all dependecies except ctools

Skips already imported posts (new comments are still imported)

Organic groups support

Known issues

Security issue: All versions of this module prior to 6.x-2.1 are affected by an access bypass vulnerability. If you use version 6.x-1.x or 6.x-2.0, please either upgrade to the latest version or simply deactivate the module if the import functionality isn't needed anymore.

User passwords aren't transferred from WordPress, a password for new users must be set after importing. This is a limitation of the WordPress WXR export format.

Blogroll isn't imported because it isn't included in the WXR export file created by WordPress. However, you can find instructions on how to export your site's blogroll as an OPML file. This OPML file can then be imported into Drupal through a module such as Feeds.

Special WordPress tags such as [video] and [caption] are not automatically translated into HTML

Password-protected posts are imported as unpublished nodes. The password function can be replicated using this module : Protected node

Invalid XML: Though the WXR format is based on the XML standard, some versions of WordPress can produce, under certain circumstances, a WXR file that contains XML formatting errors. Because this module processes the WXR file using XML functions, it is intolerant of such errors. See README for details.

Warning

Before trying any version of this module, it is highly recommended that you perform a full backup of your Drupal installation. WordPress import will make changes the contents of your Drupal database and as such, a failed import can be difficult to undo without such a backup. You can use a module such as Backup and Migrate to backup your database from within Drupal.

Alternatives

These other modules can also be used to import Wordpress content into Drupal :