A lot of people are running headless WordPress whether they realize it or not. Let’s define what “Headless WordPress” really means.
With a few exceptions, you are most likely running headless WordPress. Those exceptions are; 1, You disabled the WP REST API or 2, You are running an old version of WordPress. Specifically version 4.3 or earlier.
For example; https://WordPress.org/wp-json
Any WordPress site that you can interact with by accessing that URL is considered a headless CMS. You are requesting content from the site by using a URL or endpoint. Also known as a REST API.
API is considered headless. And not all APIs are the same. API stands for an application programming interface. APIs do not require a Graphical User Interface also known as a GUI. In this case, our GUI is the WordPress Dashboard.
When talking about WordPress there a few options available. The most popular is the WP REST API. Since WordPress 4.4 it’s available by default. If you are running WordPress version 4.4 or greater and you have not disabled the REST API, anyone can access your site by using that /wp-json web address.
In short, Headless WordPress is just WordPress. Headless is just one of the many ways to interact with it. It’s often a part of the discussion around building sites with React, Gatsby, and even Shifter. They are related but it’s important to note the difference.
To say headless WordPress you might be talking about the static site you built using Gatsby. So why does it matter and what’s the difference? There are more ways to build sites than ever and clearly defining each is important. Each method requires different resources, infrastructure, and knowledge. I think that offering a well defined titled gives everyone an opportunity to learn more from it.
I hope to post more on this topic and update this post as we can offer more insight into naming and why it matters.
As Mark Fowler maybe said, There are only two hard things in Computer Science: cache invalidation and naming things.