This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.



The Ghost WordPress plugin allows you to export your WordPress data in a format that can be imported quickly and easily by Ghost.


  1. Use the Add New Plugin in the WordPress admin area
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. You can find the settings and documentation under Tools -> Export to Ghost


How do I use this?

Install it, then go to Tools -> Export to Ghost.

Contributors & Developers

“Ghost” is open source software. The following people have contributed to this plugin.


Translate “Ghost” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Added permission check for downloading the exported data. Only users allowed to do that can download it. Props tomhallam.


  • Added ‘the_content’ filter around $post->content. Helps with markdown conversion and display issues


  • new line tweaks: h1 and h2 will be prepended by new lines now. Previously they weren’t, and that caused problems with opening a new tag for the headers.
  • set h1 and h2 to use atx method (# and ## instead of underlining with === and —)
  • tweaked code block: multiple lines of code blocks are exported wrapped with ticks instead of being indented by one tab character. Code spans not changed.
  • shout out to sorbolene on #ghost for taking the time to nag me about this 🙂 Thanks!


  • implemented HTML to Markdown (thanks @yauh!). Ref:
  • code lint: plugin now adheres to WordPress-Extra coding style
  • added featured image to the export


  • Restricting fields to fit within Ghost’s db schema (concatenating some of the fields):
  • title and slug are both capped at 150 characters
  • status is capped at 150 characters (although you’d only every use about 15)
  • language is capped at 6 (although most are 5, like “en_GB” or 2)


  • Housekeeping in the repository.


  • Added support for multi-user capabilities, it now exports users, and connects posts with the users
  • Now exports pages
  • Exports user meta
  • Moved the json file save directory to the uploads folder. Added check whether the folder is writable or not.


  • Added support for private and pending WordPress post statuses (which were unhandled, and thus broke import). Ref: WP Query: Status Parameters


  • Removed published_at date from draft posts


  • Bumped version to current stable Ghost version
  • Added Export link to plugin row display for easier access
  • Changed date format in exported JSON. Previously it was microtime, which caused troubles on 32 bit PHP installs, as the maximum integer was less than current time, so exports were either in scientific notation or string. Currently using RFC2822 format (date(“r”) for the devs), which works with the importer


  • Fixes a bug where future posts would crash the plugin, and you weren’t able to export
  • Future posts are exported as drafts. Their published_at retains the future publish datetime though
  • Updated version to 0.3.0 for semver reasons
  • Left out Bond version 🙁


  • Fixes a duplicate tag issue.


  • Removed the export of Categories so that duplicate slugs don’t happen if there is a tag and a category with the same name.


  • There was a schema change in 0.3.2 or somewhere near that. Basically the way tags work changed, thus the exporter had to be reworked.


  • Fixed a typo I left in the previous version causing everything to not work… Sorry…


  • Fixed a path issue that would sometimes result in empty .json files. Hat tip to Ian Wootten for the fix!


  • Initial implementation