All Articles

Content Management Systems and the W3C

The big CMS news this week is that the site developer for the web standards leader W3C is dropping Wordpress for a major new upgrade.

Wordpress, of course, is by far the most popular and mainstream website framework in the world. The major issue seems to be the new WP interface, Gutenberg, and issues with accessibility.

Symfony and Composer Ecosystems

Wordpress sites can be amazing but the project has sidestepped two major trends in the PHP community - the emergence of Composer/Packagist as the default package management system (there are some community efforts like WPPackagist and mirrors on Packagist). Composer has in turn helped cement the use of Symfony components as fundamental framework building blocks. I have been a Symfony dev for almost a decade. It has an initial learning curve but I love it. Symfony is clean and fast, and readily deploys Twig templating. It’s relatively easy to build a CMS on top of it, which is why so many PHP CMS systems — Drupal, Laravel, Joomla, Statamic — all use Symfony components.

The W3C’s agency, Studio 24, says it is keeping PHP and has shortlisted Statamic and CraftCMS, two beautiful but proprietary administrative content management systems. They have been around long enough to mark the success of a kind of a new model — projects built on open-source and that provide their full code, but with licensing restrictions and affordable costs.

CraftCMS appears to run Symfony-community Twig for templates, but on top of the Yii Framework. You may have never heard of Yii, but there are more unique domains running it than Django. I closely evaluated Yii about 10 years ago for a platform application, but ended up choosing Symfony. The main reason at the time was Symfony’s component library approach and emphasis on security. Yii was definitely one of the most advanced PHP frameworks at the time, and I’m glad to see CraftCMS is thriving using Yii 2.0.

Drupal 8/9 Deserves Another Look

Given the commitment to headless architecture and the need for an enterprise CMS, Studio 24 should give Drupal a closer look, rather than dismiss it because of concerns about upgrades and front-end complexity. Drupal 8 largely solves the upgrade issue, as the platform is now driven by Composer using a Symfony and component architecture. Indeed, like Lavavel (which underpins Statamic), Drupal 8/9 is based on many Symfony components, including Twig, and can operate as a headless CMS. Drupal is complex but it is truly an enterprise class CMS.