Migrating WordPress comments into Ghost native comments?

I’ve been waiting for native comments for a long time before switching: 3.0 is out: comments supported? - #15 by bert_o_t VERY exciting to see them here finally.

I’m on WordPress currently, and wondering if it will be possible to migrate comments from there in a similar fashion. I’ve done a content migration locally which went very well enough so encouraged to see if it is possible to get all my comments over into Ghost too?

In WP, the commenters typically have an email address so was wondering whether it would be possible to make them as users with a random password in Ghost?

Noticed this post Importing third-party comments into the native commenting system - #4 by ryansechrest but that seemed to be going from something already Ghost related.

Has anyone attempted something similar moving from WP to Ghost?


I think @ryansechrest had the right idea in the linked post-- Comments are not yet part of the Ghost “Admin API”, so the next best target is directly inserting comments in the database.

As for Members, they are supported in the Admin API, and the only required field is an email address: Ghost Admin API Documentation

So that this point I think you’d need a bit of coding which creates the members as needed, tracks the member IDs tied to email addresses and then directly inserts the comments into the database.

OR, look at the open source Admin API and see about extending it to support adding comments.

1 Like

@markstos thanks for the info. Will have to weigh up how how much I want the historical comments migrated compared to how much I want to just enjoy getting things up, running and switched over to Ghost!

My decision was easier because at the time Ghost didn’t support comments.

I still have an old blog with WordPress and the more I use them side by side, the more prefer Ghost!

The places were Ghost is “too minimal” are less frustrating than dealing with too many WordPress plugins, too much comment spam, and too many security updates.

If there are a few awesome comments, maybe you could migrate them by hand and make them part of the body content, but if there are a lot of good comments, it’s a tougher decision.


@benfrain - Hi Ben - Bringing Wordpress comments is also a major sticking point for me and I’d imagine many, many other WP users (there’s enough of them! :heart_eyes:).

It’s great Ghost supports comments now, but bringing over historic WP comments is a must.

I’d love to hear from anyone whose done this - or could do it.


Hi Ghost’er, I set up Ghost blogs over 4 years ago, electing to use Ghost as it seemed much simpler and cleaner than Wordpress and other alternates. Comments were an essential requirement and I elected to add these via the Commento Open Source project. While Ghost as thrived and grown, the same cannot be said for Commento, as a project it has been abandoned. Over the last few weeks I have been working to get comments out of Commento and loaded into Ghost. I did this through testing to understand Ghost behaviour and using SQL to manage data migration. I documented in my post on migration . I am sure the Ghost team will eventually provide a simple import function. Until then I hope info is helpful.
Cheers from Oz,


When migrating Wordpress comments, I think we should migrate them to Diqus first, then embed Disqus to Ghost or export Diqus data to another comment system.

I’m wondering if there’s been any development into migrating Wordpress comments into Ghost, that is all that’s stopping me from moving my 5 blogs to Ghost.

1 Like

I don’t believe there’s a good route currently to get comments into OR out of Ghost that isn’t directly editing the database.

One option you might consider would be adding the old comments at the end of the post body, as part of the post content. That migration could be automated fairly easily, and then you could have the new Ghost comments appear below…

Thank you, that could work for me. Do you have an example to share? How could that be done?

I’d probably spider the site with something like cheerio and then use the admin api to insert the posts (post content plus comments in this case) into Ghost. Every migration is a little different, but that strategy generally works pretty well. I’d probably insert the post plus comments in an HTML card, unless you thought you were going to want to edit, in which case you could try letting Ghost convert to mobiledoc, but sometimes there’s more formatting loss that way.

Thanks again. I thought an easier way would be to migrate the WP comments to Disqus and have both Disqus and the native Ghost comments, with Disqus going below the native comment section, but I would only need Disqus on past posts. Do you know if it’s easy to have Disqus (or Cove or Commento) for only selected posts?

If you edit the theme, you could add some logic for what shows on each post, perhaps based on publication date or a specific #internal-tag.