Going Static: Escaping WordPress and Taking Back Control

Going Static: Escaping WordPress and Taking Back Control

hugo static-sites wordpress azure blog

This is the second “launched” version of my blog. The first was years ago and the design was based on the design of thecribs.com because I have always been cool. That version died early and quietly but it wasn’t long before the limitation of me shouting at strangers in the train station grew weary and I needed to get back to it. When I decided to pull the trigger - I wanted to get going with a static page generated by one of the new kids on the block site generators (I never considered getting Mark Wahlberg to do it but that would have been cool). I messed about and was never happy with the output so landed with the default WordPress. WordPress is amazing (it powers over 40% of the web) but it is far too heavy and expensive for little old me. I was on the cheapest Azure, out of the box, WordPress plan. It was slow and not the experience I wanted.

So I got AI to fix it..

How AI fixed it - in Agent Mode - While I Ate Pringles

👤 Me
Create a new static blog using a common tool. The tool must be compatible with Windows and be able to retain existing SEO URLs.
🤖 Copilot
Recommended Hugo, installed it via winget, initialized the site structure, and configured permalink patterns to match WordPress.
👤 Me
Can you migrate all the posts from chrisoliver.dev?
🤖 Copilot
Scraped the WordPress site, extracted all blog posts with their titles, dates, content, and slugs, then converted each to Markdown with TOML front matter.
👤 Me
The page looks nothing like my site. Can you make it look the same?
🤖 Copilot
Built custom layouts for the homepage and individual posts, matching the original WordPress design with custom CSS and layout templates.
👤 Me
Can we add featured images to each post?
🤖 Copilot
Downloaded hero images from WordPress uploads, added them to the static folder, and configured each post's front matter to reference them.
👤 Me
Can we make it a 3x3 grid on the homepage?
🤖 Copilot
Created a responsive three-column grid layout with featured images, titles, and descriptions.
👤 Me
The images are different sizes. Can we standardize them?
🤖 Copilot
Set fixed heights (200px for homepage, 400px for post pages) with object-fit: cover to maintain aspect ratios without distortion.
👤 Me
Can we add the title as an overlay on the hero image in each post?
🤖 Copilot
Added gradient overlays with white text positioned over hero images on individual post pages.
👤 Me
Can we categorise the posts?
🤖 Copilot
Configured Hugo taxonomies and categorized all posts into management, software, and AI topics with relevant tags.
👤 Me
Can we add Google Analytics?
🤖 Copilot
Integrated Google Analytics using Hugo's built-in template support and the measurement ID.
👤 Me
How do I deploy to Azure static pages?
🤖 Copilot
Provided deployment instructions for Azure Static Web Apps with GitHub Actions integration.
👤 Me
Summarise this session. I want to use it for the basis of a new blog post.
🤖 Copilot
Generated the initial draft of this very post you're reading now.
👤 Me
Let's add a favicon. Make it a cool 'C'
🤖 Copilot
Created an SVG favicon with a white "C" on a gradient background (later changed to black).
👤 Me
Let's add my LinkedIn to the page.
🤖 Copilot
Added LinkedIn profile link to the footer.

The Result

The entire migration took a few hours of conversation spread across a couple of sessions. What would have been days of reading documentation, trial and error, and Stack Overflow diving became an iterative dialogue.

The new site is:

  • Blazingly fast: Static files served from a CDN
  • Fully customized: Every layout matches my vision
  • SEO-preserved: All original URLs intact
  • Version-controlled: Everything lives in Git
  • Dirt cheap: Azure Static Web Apps free tier
  • Future-proof: No plugins to update, no security patches, no database to maintain

Static sites are amazing - they’re a return to fundamentals. Fast, secure, simple, and yours. For a blog, it’s the perfect fit.