How to migrate from WordPress to Scrivener?

I recently started using Scrivener and like it. I want to centralize my blog posts and various writing projects. The problem I’m having is with the Wordpress blog posts–how do I migrate them? They exist only as posts on several old sites of mine–no local copies. In addition, many (most? all?) of the posts have photographs that are integral to the text (I’m a photographer).

I know I can download a single XML file with all the text and links but I’m not sure what to do with that. I’m experimenting with a utility that converts each Wordpress post to a static html file. I see Medium has a migration tool (maybe there is way to batch export from Medium without making posts public?).

I use a Mac.

In short–lots of way to get into Wordpress. How do I get out?


Not sure if this is exactly what you want, but here’s how I make static copies of my blog posts within Scrivener:

Go to the web page or blog post you want to import into Scrivener.
Copy the URL for that specific page.
Now go to Scrivener and select File > Import > Web Page
If it’s not already pre-populated, go ahead and paste the URL into the Web Page field.
Then you can also enter a title for the sheet within Scrivener.
Click OK and wait a few seconds.
The result is you have the web page, including all graphics, inside Scrivener.

If you’ve got the XML file, you could try this site:

I was sure there were plugins for this but it looks like they’re mostly all gone.

However, this plugin looks the goods but hasn’t been updated for ages

O.K., thanks. I’ll look into those options.

Meanwhile I tried the import function in Medium. Oh my, Medium is good-looking or what? They have a simple process to import the XML file (exported by Wordpress). The resulting medium posts aren’t made public until you approve them, either as a batch or individually. Without making them public you can still export them out of Medium into individual html files (which look just like the Medium posts, as you might expect).

So I’m this far. The remaining problem is that Scrivener will only allow them to live in the Research area of the Binder, not in the Draft area (since they are media files, according to the alert that pops up when you try to drag and drop them). Not perfect but workable. The text is selectable, of course, as are the images, so I can draw upon the posts easily enough when writing new or revised texts.

Works well enough but I’m still surprised that there aren’t numerous options for getting stuff out of WordPress–seems like the arrow points only one way, for reasons I don’t fathom.


Have at look at the scripts I wrote some time ago that use XML and XSL:

They do not work with Scrivener 3 because “Import files” no longer imports HTML files (it treats HTML files as images for some reason).

It will take a bit of know-how to run XSL scripts, you might have to install saxon xslt 2.0


I have a similar need - to be able to import my WordPress posts into Scrivener. I have over 900 posts of approximately 1000 words each, so anything that creates just one file as an export isn’t working for me.

I tried to use Medium but it seemed the only way to do that was to also publish every single post in Medium, which I didn’t want to do. I couldn’t see a way to keep them as drafts which would allow subsequent export. Could have been user error since I’m new to Medium, but I abandoned the process.

BUT with two plugins I finally found, I was able to find a way to do it. First one to install is this:

It allows exporting to DOC or RTF (among others) AND even more importantly for me, it can create a separate file for each post.

I was suspicious at having to create an account and get an app key, but it worked. I had to watch the demo which you can find here: … c+Exporter

After I set up the exporter options, I tested it by choosing one of my categories, in “bulk actions” selected “Aspose Export to File”. Within a few seconds the folder was downloaded with each entry. I imported them into Scrivener and when they open, they have all of the original formatting, the title and date at the top, as well as the hyperlinks (which I need to strip out). Now, if only it created the file names from the post title, it would be perfect.

There is a way to keep the Medium posts as drafts and then to export them–I forget the details now but it it fairly straightforward as I remember. This workflow does give you proper titles for each document, although the word “Draft” and the date are there, too.