Skip to main content

Wordpress to Hugo

After 19 years of fun and adventures, I have decided to retire my Wordpress-based blog, and move to a new platform, using the Hugo static site generator. I have previously written about the challenges of maintaining an old installation of WordPress in a backwards compatible manner, and that maintenance effort was beginning to outweigh the benefits of continuity. The WordPress software continues to demonstrate tremendous innovation, for example in its block editor, but that is focused on ease-of-use of web publishing by non-technical people and consequently adds layers of abstraction and complexity that I do not need or want for my website.

WordPress has a chequered history of initially security, and later, performance problems1. When static site generators first became fashionable 7 or 8 years ago, the majority of my blog posts were still written on-the-go. As smartphones became more powerful, and iPads made it possible for even light-packing travellers to carry a reasonably-sized screen, WordPress’ mobile app became indispensable to me for blogging on-the-road. Since then, life and technology changes have made mobile blogging less and less important: in 2023 most of my posts are long form articles and/or collections of large photographs taken on a camera and processed on a computer—the idea that social media has eliminated blogs is untrue but they have evolved to fulfil different roles.

One of my primary frustrations with WordPress is my current publishing workflow for photographs. Serving images on the web has become highly complex. The wide variety of screen sizes and resolutions requires websites to serve images of a suitable size based on the client: it is inefficient and slow to serve a large image to a mobile phone but a small image looks blurry on a 27" monitor. This problem has been around for at least a decade but the default WordPress behaviour (i.e. without using plugins) when adding a gallery was hard to understand and resulted in a low pagespeed score from Google. I devised a process to make it better: specifically, optimising jpegs prior to uploading and manually changing the WordPress gallery settings to serve smaller images, but after several years of using this workflow it was becoming tedious. Despite WordPress’ focus on making publishing accessible for all there are not yet signs of improvements in this specific area.

WordPress runs a very large number of the world’s websites, perhaps as much as 42% according to Many of these serve huge audiences, and have complex requirements to serve the needs of large teams of authors and contributors—the platform is powerful and scalable. But perhaps that is where my needs have now diverged from what WordPress offers: I want a simple website and blog for my travel writing and photography, preferably one where I can feel hands-on to the technology that powers it. Static site generators can still be very complex, especially if you want to implement automated build processes and mobile editing, but the starting point is fast and simple, and thus much more aligned to my goals. My requirement for an efficient photograph publishing workflow made Hugo, which features an image processing pipeline, an obvious choice. Having made that decision, finding a theme that suited my style of blog took a considerable amount of research and experimentation, but the effort has been worthwhile because I am pleased with both the speed of the new publishing workflow and the pagespeed score.

Page speed scores for the about page showing a 95% rating for performance

  1. Although its success is testament to its leadership identifying and comprehensively fixing what could have been fatal issues. ↩︎