DEV Community

Cover image for Headless WordPress? Here's Why It's a Bad Idea
Joel Varty for Agility CMS

Posted on • Edited on

Headless WordPress? Here's Why It's a Bad Idea

Disclaimer: I work for Agility CMS, so I have an obvious bias, but I do believe web developers deserve a better experience than what Wordpress provides.

WordPress has been the dominant figure of content management since its inception in 2003. 

It's undeniable that, seventeen years later, there are many reasons why WordPress is the most popular CMS on the market. With a market share of almost 40% of all websites on the internet, it's one of the powerhouses in the CMS space. 

However, all that glitters isn’t gold. WordPress isn't a one size fits all solution, and many companies won’t benefit from using WordPress as their CMS, especially if they need headless capabilities

In this article, we’ll tell you about headless WordPress, explain why it’s a bad idea, and provide some alternatives for implementation instead of going headless with WordPress.

What Is Headless WordPress?

Ever since REST API was bundled with the WordPress core in 2016, developers can experiment with it in a decoupled way, using JavaScript frameworks or libraries to write the front-end.  

With a decoupled WordPress, the WYSIWYG editor is disabled, and most of the critical functions are instead managed through REST APIs. 

The WordPress REST API returns JSON instead of HTML, giving you more flexibility around what kind of front-end you use: vanilla JavaScript, a native mobile application, an SPA, or all of the above.

While several types of sites and apps can benefit from the headless WordPress approach, WordPress comes pre-packaged with a myriad of options that you might not probably need, resulting in hefty performance losses. 

When Headless WordPress Isn't The Best Choice For Your Project 

There are a few scenarios where headless WordPress is a bad idea. These are some of them.  

When You're an All-Marketers Team

If a member of the marketing team performs your website maintenance, the chances are that headless WordPress isn't the best solution for you. Since the headless architecture removes the visual interface, it's likely that you will need someone fluent in JavaScript to maintain the site. 

Also, if you don't have a web development team in place and rely on marketers to create new functionalities, WordPress probably isn't the best idea as your marketers will need to learn more than basic front-end code. For those that don’t have the required technical skillset, it can be an unnecessarily frustrating experience. 

When You're Looking for an Easy-to-Use CMS

While regular WordPress might be a good idea for many people out there, it's headless component isn't that simple to use, especially if you're a marketer. 

Instead, there are headless CMSs like Agility that give you all the flexibility and simplicity you need in a low code environment where marketers can thrive and create pages without hindrances. The truth is that going headless on WordPress might be an overkill and chances are that you're better with a headless CMS that gives you a non-gimmicky performance.

When You Rely on Plugins To Get Functionalities

Let's say that you've built a WordPress site and want to go headless. It's possible that the functionalities of any plugins you've installed won't carry over to another application. 

This means that if you're building omnichannel experiences, you might not be able to with WordPress. According to Aashni Shah, CEO at Elixir Labs "What made WordPress powerful was the numerous plugins; however, support for those plugins would randomly die or break between different versions of WordPress and then I'd either have to find and reconfigure a replacement or look for some other alternative."

For example, static websites or PWAs need system-specific plugins and integrations, or maybe even new functionalities to be developed by a dedicated team. When you're using headless WordPress, all the functionalities of the good old WP aren't there, and you might have a hard time finding yourself at ease. 

A huge benefit of a true, headless, multi-tenant system is that it's fully managed and upgraded for you. “This is a huge benefit because upgrading can often be a costly project, not to mention that it's not very fun either so your team will be very happy to hear this benefit! A headless CMS like Agility CMS does not have versions. Updates are deployed continuously and automatically available to all users.” - Jon Voigt, CEO Agility CMS, explains.

When Speed Is a Must

WordPress, coupled or decoupled, isn't really the fastest CMS out there and that's a fact. For instance, according to Adrian Busschaert, one of our partners at Soci Media, "WordPress has an outdated structure and logic for the sake of maintaining compatibility with sites created many years ago. For this reason, the platform is slow, hard to customize and not secure."

Due to its nature, WordPress has always been a request-heavy CMS, which makes it clunky and sluggish when we compare it with other modern CMSs. Even if you bundle responses, it might still not be enough.

Throttling the number of requests during site generation doesn’t work either as deployment takes too long, and sites are at a subpar speed, even with proper caching.

Headless WordPress vs Agility CMS

One of the problems that headless WordPress presents is that you can't really count on it when it comes to your long-term development needs. 

Adding Features

For instance, if you require a feature on WordPress that doesn't already exist as an add-on, plugin, or API, you'll need to hire a developer to build that. 

Agility CMS is built to be an extensible platform which means you can add any feature your need or ask Agility team to build it for you. Very often, developers tweak the platform to suit client’s needs. We help you save development time and give you a stable, lightning-fast platform where you can develop all the omnichannel experiences your customers need. 

Deep down, WordPress is not a Content-First solution. Agility CMS or one of the partners will always start with offering Content Architecture consult to make sure your CMS solution is future proof. 

In a nutshell, here is what it means to be a Content First CMS:

  • This means Website or App front-ends can be rewritten easily without changing the content in the CMS.

  • This enables a future where you never have to rebuild your website from scratch ever again.

  • By starting off with great Content Architecture, customers can create the right Content Definitions with the kinds of Content Relationships that will stand the test of time.

  • Content that serves as a single source of truth can be placed in a Content Warehouse so it can be made available anywhere.

  • Content that is designed specifically for a Website, App, Line of Business, or Organizational Segment, can be placed in a Property Instance.

Also, another thing that makes Agility CMS different from a headless WordPress is the issue of support. 

Many people don't realize that when you're working with an open source solution, one of the most immediate problems you run into is one of support. 

Open source programs aren't owned by anyone, meaning there isn't any company behind it. If you need development or support work, you and your staff will have to handle it. Traditional Wordpress or Headless WordPress - these solutions don’t offer any support.

You can't pick up the phone and call someone when you get stuck. If your site goes down, it's up to you and your employees to fix the problem. 

Having a solid foundation of support means that if you encounter a bug or get hit with downtime, these issues will be fixed faster -- if they actually occur at all. 

You get immediate access to the people who built the features you're experiencing issues with and who know it like the back of their hands. The importance of this is something that you cannot put a price on, especially when every second of downtime is costing you money.

Agility CMS + Hockey Canada: 90% Load Time improvement in Performance During Peak Times

When Hockey Canada set out to find a new content management system, the brand's need for a flexible, secure solution was paramount. 

After an extensive review of platforms, Hockey Canada landed on Agility CMS to rebuild its online presence because of the platform's robust capabilities.

During large-scale hockey events, fans visit the Hockey Canada website in droves to find game schedules, scores and information about players. Hockey Canada has experienced issues in the past as a result of a previous platform's inability to handle big spikes in traffic.

Based on the findings, Agility implemented –with the help of partner Point Alliance– updates to the Hockey Canada site. We put a plan in place to ramp up its hosting environment if the load intensified at any point in time, and we tested many different scenarios.

The Hockey Canada website was rebuilt and relaunched on Agility CMS with the help of an implementation partner.

There was a significant improvement in Hockey Canada's performance. Page load times were down by about 90% during peak traffic times, while CPU usage was down by over 60%.

Read the whole case study here: Case Study - 90% Load Time improvement in Hockey Canada's Performance During Peak Times.

Keep Reading

If you want to learn more about Headless CMS, make sure you read these articles:

Top comments (6)

Collapse
 
patarapolw profile image
Pacharapol Withayasakpunt • Edited

I honestly don't get why I need speed, when all I need is a static site generator with (mostly) no API in production.

BTW, currently I go flat file CMS, with lunr.js as serverless function (as the only API in production).

Collapse
 
joelvarty profile image
Joel Varty

That's cool!

When your requirements demand a more complex Content Model, with additional features for your content team, a Headless CMS might be a good idea.

Collapse
 
chenemi_abraham profile image
Chenemi Abraham • Edited

We currently use Headless WordPress + Next.js at and it’s a much better experience. The ability to turn our front end to this new and beautiful UI makes like even easier.

Collapse
 
indrajoko21 profile image
joko warsito

Is it possible if we fetch any SEO tags inside header, if we using this scheme (headless)?

Collapse
 
joelvarty profile image
Joel Varty

You bet! In Gatsby, use the helmet plugin. In NextJS, they actually provide a

component to work with.
Collapse
 
joelvarty profile image
Joel Varty

EDIT: Added a video for those who like the lean-back experience :)