I've scrapped the WordPress blog and brought it all into Ghost.
Yes, I did it again.
No excuses. No real explanation other than I'm always looking for a balance between simplicity and capability. Ghost strikes a decent balance, so I'm trying it again.
Some notes on the build.
Fired up a $5/month ready-made Digital Ocean Ghost droplet, updated DNS to point to the new IP, and went through the semi-automated installation process.
Exported the entries from WordPress using the Ghost exporter plugin. The import file was bigger than the default setting for client_max_body_size
in nginx so I edited /etc/nginx/sites-enabled/copingmechanism.com.conf and set it to 100MB and restarted nginx.
Changed the default routes in routes.yaml to include the year, so...
collections:
/:
permalink: /{year}/{slug}/
template: index
Added an Archives page template, page-archives.hbs
which lists all posts on one page. Why Ghost doesn't come with this by default is a mystery. It's here.
Set up a redirect from the old RSS feed to the new "official" RSS feed: https://copingmechanism.com/rss/ in redirects.json.
[{
"from": "/feed/",
"to": "/rss/",
"permanent": true
}]
Added navigation, some header images, and tweaked settings.
Added Plausible analytics.
This sounds more complicated than it was. All in all it took about an hour.