If there’s one thing that has been making waves in the WordPress ecosystem this year, it is the new REST API. Officially known as WP-API, and currently available as a plugin, it is due to be rolled into core at some point this year.
A REST API?
A REST API may not initially seem like a useful feature for theme developers. It is clearly very useful for those looking to use WordPress as an application platform, but how the REST API can be used within a theme is perhaps more opaque.
The Theme Division at Automattic have had an eye on the potential uses of a REST API powering a theme for at least a couple of years now, and in recent months some concepts have started to take shape.
- Design: We can have smooth transitions between the different types of content on our websites.
- Speed: We can store content from the REST API in localStorage (effectively the browser’s memory). This means that on the initial site load we can store any post that is retrieved. Imagine a user clicking a ‘read more’ link and the full post being displayed without the need of a further server request.
Recently, I have been talking about building themes with the REST API and our approach to building Picard at a number of WordCamps so far this year, culminating in a workshop at the inaugural LoopConf.
Today, Picard is now publicly available on GitHub.
We intend to continue developing Picard and working on some of the harder problems that we have not yet solved. We aren’t stopping at Picard either. Our experiments have led us in various directions. My colleague Kirk Wight has created another experimental theme called Tango. Tango is an extension of the concepts we are exploring with Picard, blended with the bulletproof Underscores starter theme.
Make It So
The future of WordPress theming may dramatically shift with the official adoption of the REST API but you don’t have to wait for the future to take advantage of it now. Clone Picard and Tango. Experiment and see what you can do. These are exciting times for themes!
Further Reading and Resources
- My WordPress Renaissance
- WordPress in Weird Places
- The REST API (and How It Could Change WordPress Forever)
Photo credit: JD Hancock/flickr
11 thoughts on “Theming with the REST API – Meet Picard”
Great write up Jack, thank you!
Quick question if I may. Picard imports 15 SASS files, will that have a negative impact on the speed, or it does not matter?
Tango does that too, so I figure why not ask 🙂
The structure of the Sass is very much experimental and incomplete. However, to answer your question, regardless of the number of Sass files, they are compiled into one CSS file for production. So I don’t believe there is any inherent reason why performance would be affected.
Alrighty, that’s what I needed to know.
Side note: It would be nice to have a basic tutorial on https://make.wordpress.org/themes/, not sure if you would be interested or have time to spare 🙂
Once again, thank you!
They all get compiled into a single file using sass + gulp, so nothing to worry on that side.
Reblogged this on Joan Artés and commented:
Conoce el futuro de los Themes en WordPress: Picard como Theme prototipo hecho con la REST API
Very cool to see themes “officially” moving this direction. I’ve been experimenting with this concept in my spare time as well. However, it would seem much more productive to contribute what I’ve learned to Picard.
Looking forward to diving in an playing around!
Comments are closed.