ClassicPress: the new foundation for here
Classicpress | CMS | development | gutenberg | Wordpress
POSTED: July 23, 2019
Yesterday I started to think about how I will teach the CMS course this autumn. Specifically I began to ponder what I intended to do about Wordpress 5.0.xx and the new Gutenberg editor.
I have tried it and didn’t like it. I have read about it and the extraordinary accessibility problems that it has generated. I have had enough trouble showing students how to build a Wordpress site in previous years without having to throw react.js into the mix while allowing for the fact that Gutenberg still contains enough bugs to trip up even a conscientious student.
I looked at ClassicPress, which forked from Wordpress last autumn, and has now had its official release. I noticed that it has an immigration tool. I also realised that the block editor has no logical role to play on this site, which has been designed with no external-facing plugins and a mass of my own custom php code.
I built the theme here from scratch with no intention of using it anywhere else. I built it over two years while teaching the CMS course, to show how I could use a grid-based design. I based it on the jointsWP starter theme that implements Zurb Foundation. All of this means that, even if Gutenberg had won universal praise from its launch, I would not need it.
I therefore backed up this site manually in its entirety and switched over to ClassicPress 1.01. The immigration tool just worked and, as far as I can see, everything works as before. Most importantly, though, I will no longer have to worry that the core architecture will no longer change under my feet.
My task this autumn just became manageable again. My personal teaching project will now focus on security and speed. I will revisit some of the php and make sure it all follows best practices.
I may also look at the suggestions that Natalie Gustaffson made in her thesis in the Spring about moving the site to a headless state in which most of what gets delivered gets delievered as static pages.