This post is a static HTML file, built from a Markdown text file that i’m writing right now from Github.

There’s no WordPress behind it anymore.

Nothing queries a database when you load this page.

The page already existed before you got here.

This isn’t a “Wordpress is Dead!” post though.

I just saw that again on Threads the other day actually.

The estimate is something like 400 million websites are still powered by Wordpress.

So Wordpress isn’t going anywhere yet.

This little website transition is not signaling the end for anything.

But I wanted to share some insights into why and how the change was done.

Good Ole Fashioned Vanilla HTML and CSS

Twenty years ago I remember having a massive “Learn to Build Websites with HTML” on my desk.

Following along with tutorials and then seeing it come to life on my computer screen was amazing.

The web was so fun back then!

Just simple HTML and handwritten CSS.

None of the endless frameworks that would come along later.

I had gone to a tech school for graphic and web design, but we really only scratched the surface on web design.

So that book was my reference bible for a bit after school.

Continued tinkering and learning on my own.

Custom HTML Myspace backgrounds anyone?

I don’t remember exactly when I discovered Wordpress though.

I distinctly remember pre-Wordpress but I don’t remember how I moved over to it.

Blogging was becoming very popular right around 2008 or so and that might have been it.

I was also starting to do client website projects and some of them required more in-depth features.

Whenever and whatever it was. Once I was in, I didn’t look back.

The Wordpress Era

Thinking back on going through all the steps of a new Wordpress install.

Back then there was something so satisfying about checking off the steps and finally pulling up that fresh, new admin panel each time.

And then the “Hello World” post, that really let you know the set up went well and you were up and running.

The open source aspect of it felt great too.

You just needed your hosting and you were set.

“This is all mine. I can do anything I want with it!”.

Then came the Themes.

And the Plugins!

“Wait, I can turn this into a crowd funding site with a few plugins?!”

All things we take for granted now, but back then it was mind blowing.

Inspirational and motivating too.

For an entrepreneur who was also obsessed with the web, it was almost overwhelming really.

Thinking through the next theme or plugin you wanted to build.

Funny enough, this feeling is back, with the LLM tools we have now. More to come on that.

Wordpress got so big that you started to see hosting companies selling “Wordpress-optimized” plans.

Some of that is overkill in my opinion but there’s plenty of sites large enough to need it.

Post Wordpress

For me, personally, anyway.

Again, Wordpress is alive and well.

This is just my version of it.

What started happening over the years was the bloat.

Dependencies, updates, conflicts, hacks.

I began to realize that there’s this huge “thing” here running in the background just to serve a few pages.

My case is likely a lot like yours: i’ve got a few pages talking about how great I am at marketing ;), a contact page and some blog posts.

I’m so bad at writing blog posts.

So I only post a few times a year.

And this is technically my side-gig, i’m not even actively marketing myself here since I’m full time at an agency.

So getting that bill each month for hosting a site that just a few people see started to bug me.

I eventually started looking for alternatives and discovered that Cloudflare has a very generous free plan.

First, a Quick Aside on Cloudflare

Cloudflare runs one of the biggest networks of servers in the world.

Their real business is protecting and speeding up massive websites, and the big companies pay them well for it.

Hosting a small site of plain files costs them practically nothing. The network is already built and running, so my little folder of pages is nothing to it.

That’s why the free plan can exist. It’s a permanent plan, and it covers more traffic than a site like mine will ever see.

Compare that to WordPress hosting.

A WordPress site is a running program, so you’re renting a computer that has to stay awake 24/7 with a database on it, waiting for visitors.

That’s what the monthly bill was actually paying for.

Astro

Astro is the tool that builds the site.

It takes my text files, wraps each one in the site’s design, and outputs finished HTML pages.

It does that work once, when I publish. WordPress did the same work over and over, on every single visit.

The category is called a “static site generator” if you want to go down that rabbit hole. There are a bunch of them (Hugo, Jekyll, Eleventy).

Astro is a popular one and it fit what I needed.

I didn’t touch a bit of the code for Astro!

Just worked with Claude Code to get it all working properly.

Bringing it All Together

So I signed up at Cloudflare, moved my domain over, and fired up good ole Claude Code to bounce ideas and questions off of as I began set up.

First, everything came out of WordPress. There’s a built-in export tool in the admin that hands you one big file with every post and page you’ve ever published.

Then each blog post got converted into its own plain text file called Markdown.

The main pages (about, services, contact) took more work, because those lived inside my old WordPress theme instead of the export file.

Those got rebuilt from scratch, which allowed me to start riffing on a new design with Claude.

The one you see here now. It’s not final. Probably never will be but I’m generally happy with it for now.

But more important than design was the URLs.

Page Redirects

Every post on the old site had an address, and those addresses are out there. Google has them indexed. Other sites link to a few of them. A couple of my posts still pull steady search traffic years after I wrote them.

Change the addresses and every one of those links leads to a dead page.

So all 21 blog posts kept the exact same address they had on WordPress. Same words, same slashes.

WordPress also generates a pile of extra pages you never asked for. Category pages, author pages, date archives, RSS feeds for each of them.

Google finds those too.

It took 37 redirect rules to catch all of that and send people somewhere useful.

This is the step people sometimes miss when they redo a website, and it’s why their traffic falls off a cliff afterward.

If you take nothing else from this post, take that.

Email and Contact Form

So if nothing is running, what happens when someone hits Send on the contact form you might ask?

Fair question.

So the site keeps exactly one moving part. Cloudflare lets you run a tiny function that stays asleep until it’s needed.

When someone submits the form, that function wakes up, checks that the sender is an actual human, hands the message off for email delivery, and goes back to sleep.

The message lands in my regular inbox, and when I hit reply, it goes straight to the person who wrote it.

Email at the domain was the other piece. I was previously also paying for a custom email service so I could have the @unlockedagency.com aliases.

I no longer need it!

Cloudflare will accept mail sent to my domain and forward it to the inbox I already use. Any address I want.

All part of their generous free plan.

How Publishing Works Now

When I want to post something, I write a text file and save it to the site’s folder on GitHub.

About two minutes later, it’s live.

I just go back to it and hit the edit button if I want to make changes or additions.

That’s the process and it works from my phone too.

GitHub is where the site’s files live, and it’s watching for changes. When a new file shows up, it kicks off Astro automatically, Astro rebuilds the pages, and the fresh version gets pushed out to Cloudflare’s servers.

I don’t log into anything other than Github itself. There’s no admin panel anymore, and nothing waiting for me to update it.

Full Circle

Under WordPress, this page didn’t exist until you asked for it.

Every visit, WordPress went to the database, grabbed the title and the text and the settings, and assembled the page on the spot. Then it did it all again for the next person.

Your browser still got HTML at the end, same as always. But that HTML was built to order each time.

Now the page is made ahead of time. A finished file, sitting there before anyone shows up.

That’s what I meant at the top. The page already existed before you got here.

And the stuff I actually edit is HTML, CSS and plain text again. Just like I was doing twenty years ago.

So no, WordPress isn’t dead. Most of those 400 million sites will keep humming along.

But if you’re paying every month to keep a database awake for a site that’s a few pages and some blog posts, now you know there’s another way to do it.