There’s a website I’ve been running since 1996.
Yes, I know, I’m an Internet Old.
1996. That’s 7 years before WordPress was a thing. So it’s not surprising this site was (at one point) moved from ‘something else’ to WordPress. Actually a lot of something-elses over the nearly 30 years of its existence. I moved it over to WP around 2005 (WordPress 1.5) and pretty much left it there for years.
Now it’s different. Now the site is 100% powered by Hugo.
Why Did I Stop Using WordPress?
To understand this decision, you have to keep in mind that the site had been three parts for about 20 years.
- The Blog, where announcements were made, etc, powered by WordPress
- The Image Gallery, which had … images (about 20 Gigs), powered by netPhotoGraphics
- The Wiki/Library, which is the documentation, powered by Hugo
Well, this year I got a nasty-gram and was forced to shut down the gallery. The simple truth was yes, the gallery included images that legally I didn’t have the right to use. No excuses. But the company involved was kind enough to work out a partial situation. I’m still in the middle of moving what images I can keep into a new home, but while that’s going on, I had a chance to sit down and face reality.
The gallery, you see, was the biggest feature of the site. Next was the Wiki/Library, and the blog was pretty much just announcements. There was a forum, it was removed ages ago. There was BuddyPress, ditto. People management just isn’t fun.
There was also the matter of cross linked data. Oh my, did a lot of images appear on the blog and the gallery. I was going to have to purge the old blog posts en masse anyway, so at that point, I asked myself that big question.
Do I want to move the library to WP, or the blog to Hugo?
Consider the following:
- I was going to have to manually curate nearly 30 years of blog posts (took a few thousand down to about 50)
- I already had a running Hugo site and was familiar with it (it has over 1600 files)
- If I ported to WP, I would have to rebuild my data setup for how the data is output
- Importing blog posts as text only is incredibly easy
With that in mind, it seemed obvious. Hugo.
What’s Different with Hugo?
Obviously I lose the ability to write a blog post and press publish. I have to add a new file, manually link it to my new image, and push to GitHub, where it’s auto-deployed to the site in question. The process for any data is basically this:
- Create a branch on my GitHub Repo
- Add the new content
- Merge the branch into Production
At that point a GitHub action takes over.
Beyond that, however, there are some things you take for granted with WP. Like the ease of a mailing list with Jetpack. Now, I did export my Jetpack subscribers and I’m working on a solution there, but yeah, that was a big hit. There’s also the matter of auto-deploying content to socials. But… honestly that’s been pretty much shit-and-miss lately, what with Facebook and Twitter being what they are.
But all the ‘easy’ stuff? Well Hugo has RSS Feeds, it can process images as it builds (though that will cause your deployments to take longer), it’s open source, and best of all? The output is static HTML.
Go ahead, try and hack that.
How Hard Was It?
Honestly, it took me about 3 days to pick a new theme, apply it, move my basic content over, and start rebuilding the blog. Migrating blog posts took me about 3 weeks. The hardest part was realizing I was going to have to write some complex Hugo Mod code to include my gallery with lightbox code, but I banged that out in an evening.
There were frustrating moments. The Hugo community is significantly smaller than WordPress (I mean, whose isn’t?) and some of the code is a little on the ‘understood’ level (by which I mean things aren’t always spelled out, they assume you know what they’re talking about). In a way, it’s like using WordPress back in 2006 all over again, and look at where that’s taken me!
I’m very happy with the result. I picked a ‘fancy’ theme, called Hinode, and it came with Dark Mode built in. I ported over my custom code for recaps (I have a whole star rating system) and started building out topical small galleries where I could.
If I was a newbie to the web world? This would have been impossible. Then again, a lot of the work I’m doing in WP would be impossible for a newbie. About the only tool I’ve used where I think it’d be easier would be … Maybe MediaWiki? But only because you can build templates from the editor backend.
Even with Full Site Editing, WordPress would have been a bear and a half.
Historical Notes
The ‘Library’ was once on MediaWiki because I had this idea to be a public repository anyone could edit. Only I kept getting attacked by spammers, so I turned off registration. Then I had to apply all sorts of plugins, only MediaWiki didn’t allow you to self-update like WordPress, and I had to write scripts and it was just a pain.
I rebuilt it all as Hugo about 6 years ago, and I really enjoyed it. GoLang is not something I’m familiar with, and sometimes the language drives me to drink, but so does PHP.
The Gallery used to be a home-grown SHTML setup, which then moved to a now defunct project, Gallery, and then to ZenPhoto, and finally to NetPhotoGraphics after ZenPhoto decided to be more than just a photo library. NetPhotoGraphics is hella fun to use, and I even built an embed tool for it, so you could paste a link into WP.
I did that with Hugo as well, and I’ll probably port that back to the new site sooner or later.
It Is Sad Though
Basically this site has been a part of my dev growth from day one. I wouldn’t be working in WordPress were it not for this site, and I owe it a lot. Moving to Hugo is the end of an era, and it is a bit sad. But at the same time, I feel like I’m now in even more control over everything, and I’m making a leaner, faster, website every day.
I have no regrets for the steps I’ve taken on the way, and none about this move. It’s nice to not have to worry about updates all the time. After all, what’s on the site is just HTML.
I do miss being able to schedule posts though…
Comments
4 responses to “Why NOT WordPress?”
@Ipstenu the MediaWiki thing: I recently upgraded an ancient wiki to current version (in three version-steps), and had to basically rewrite the custom skin from scratch since *everything* had changed. The MediaWiki doco: lots of it, all auto-generated from code, all of it "understood" level.We have it pretty good now with WordPress doco!
You don’t realize how amazing WP’s documentation is until you’re stuck on a “how the fuck do I do this one weird thing…” and WP has a whole page for it, and a billion blog posts and forum posts.
I went through a Hugo stage, and built a low update client site in Hugo. I even went as far as creating my own Hugo theme that to some extent emulated Genesis. For years, the one update a year I pushed through GitLab CI and all was good. But gradually I forgot how to do things. So early this year I ported it back to WP using FSE and 2024. I must say I was relieved not to have to remember another set of things.
I update this site just enough to keep it all fresh in my head.