From Wordpress to Jekyll and Beyond

2 minute read

I’ve self-hosted on Wordpress for fourteen years. Wordpress has evolved and become immensely popular over that time, growing a huge ecosystem for 3rd party plugins and themes.

It has also, like much mature popular software, become complex and large and a magnet for security problems. The attack surface for Wordpress plus plugins is very large and keeping a site secure and operational requires ongoing attention and effort.

A static site, on the other hand, has no backend other than whatever is serving the files. Its attack surface is very small compared to that of a full fledged dynamic content management system like Wordpress. It’s also fast - all it has to do is serve pre-computed files. No database lookups, no plugins to run, no pages to process and assemble. And less machinery to maintain and monitor.

I decided to switch from Wordpress to Jekyll, a static site generator. Many Github-hosted websites use Jekyll. It’s well-supported, under active development, and is easy to maintain.

Getting There From Here

The first thing when moving to Jekyll is to choose a Jekyll theme. I browsed quite a few themes and landed on Minimal Mistakes. It looks nice, works well with a variety of screen sizes, and doesn’t feel overly heavy. I hope it will provide a good experience for readers as well as for me.

The next thing is to move content over from Wordpress. While Jekyll has a Wordpress importer, it doesn’t bring import images from Wordpress! I ended up using a Wordpress plugin, Jekyll Exporter. The downside is that the new site has a lot of orphaned image files wasting space. Not a big problem but it feels untidy.

After doing minimal design with Minimal Mistakes, I needed to clean up content a little, and then publish. And here we are.

No Comments

While Jekyll and Minimal Mistakes support 3rd party comment systems like Discus, I’ve chosen not to enable comments for the updated site.

Comments, frankly, do not spark joy.

If you want to discuss something I posted, you can find me on social media.

Workflow TBD

I enjoy writing text in Ulysses on macOS.

While Ulysses and Jekyll both use Markdown for mark-up, the publishing process is not quite as one-click-slick as it was with Wordpress. When I have the time I’m going to try Ryan Daigle’s shortcut for iOS. Ulysses will automatically sync work to iOS so it will be easy to publish from there. If it works I’ll see about adapting it to macOS.

To Be Continued

I still have some work to do on the site. I’d really rather focus on new content but these things will bug me until I deal with them:

  • review and prune old content
  • add alt tags to all images
  • get rid of unused images - many image files are stored in multiple resolutions and are unused
  • review banner images and revise as needed

Ultimately some older articles and photos are just going to stay as they are.