Need help with Drupal or Grav admin, site building, design, or content? Contact us!
Help Defend Democracy! → Join Battalion today.
Exploring the Symfony universe!
No pain, no gain. In this article, I will explain three goals I’ve set for my PHP-based websites in 2023. And how they will become more integrated with Symfony than ever.
I don’t believe in New Year’s resolutions because they are horseshit.
However, I do believe in setting business and personal goals. And I enjoy earning money and learning new skills because I am nearing retirement and need to keep challenging my aging brain.
Longtime readers of my sites may know I use them as learning and testing grounds. I like experimenting with new technologies and expanding our capabilities and services on in-house sites first.
For 2023, I have three goals for them. And this effort entails a specific goal for each one.
With our flagship site that promotes our content strategy and publishing business, I want to integrate Symfony with WordPress. Yes, you read that correctly. I am not demented yet.
For our content production and web development business, I want to migrate to Sulu CMS with a frontend implementing Netgen Layouts. Or, if that doesn’t work, use the Symfony web skeleton with Layouts.
And for Symfony Station, I want to upgrade to Drupal 10 with a new theme.
The tagline for my flagship business, Mobile Atom Media, is Digital Content, Simplified. A custom OOP WordPress theme powers its frontend. I plan on unsimplifying its backend by integrating Symfony with it.
My goal is to do so using Sword. It will be the most challenging goal of the three for me to meet. I have never created a theme with Symfony. In fact, I don’t have the Symfony programming skills to do so at this point. So, this will be my third goal to attempt this year. It may be a step too far.
Anyway, William Arin created Sword, and introduces it in this article.
William says, “Modern WordPress development has been around for a while with software like Bedrock.
Sword takes an alternative approach. Instead of being WordPress with extra features and a new file structure, Symfony embeds WordPress. All WordPress pages and logic, including WP-CLI, run through Symfony.
Welcome to a new era.”
Their site makes three main points:
An additional challenge may be to continue using the Gutenberg editor.
Well, business goals have intervened with this personal goal.
I have a new client with a hard-coded site I need to move to a CMS. I wanted to explore the easiest solution for content producers in Drupal and compare it to the WordPress experience.
So, I rebuilt my Mobile Atom Media site in Drupal with DXPR.
They say:
"For too long, marketers have struggled with Drupal. Those days are over. Smart, fast marketing teams build whatever they need with DXPR, even with no Drupal experience. Drupal-powered marketing teams are now dangerous. You have all the power of Drupal—the ability to create robust websites with any form, gallery, or shop you need—combined with easy visual building. Now, that technical downside of Drupal is behind you. Move forward with intuitive drag and drop building."
FYI. It is the best Drupal experience I have had. However, it's not quite to WordPress's ease of use yet. But, it's still impressive.
I may revisit Sword again in 2025.
Mobile Atom Code implements Mobile Atom Media’s content strategies. Its tagline is Content Production, Simplified. That’s for my clients. For my sites, I like doing things the hard way. Or at least a new way.
So for my second most challenging goal of 2023, I want to migrate MAC to a Sulu CMS backend and a Netgen Layouts frontend. Sulu is an abstracted Symfony CMS, and learning it should prepare me for my Sword challenge.
However, I don’t even know if using Layouts with Sulu is possible. I will find out. But you can connect Netgen Layouts to a generic Symfony Skeleton, so why not. Maybe I can use Sulu’s headless API?
Or I might have to go another API route and use Contentful to pull in content. But at least the other parts of the backend will be Symfony.
As you can see, this goal is in the idea stage and still needs lots of research.
There is a SymfonyCast I plan on taking to learn more about using Netgen Layouts with Symfony. And I may even have to spend some consulting money. You can’t always do everything yourself.
If I have to use Symfony directly, this may not be an achievable goal this year.
I want to try Sulu first because it is Symfony-based.
If you read my article, Exploring the 17 Content Management Systems of Symfony, you know that:
"Sulu is a content management platform based on Symfony and made for businesses. It's a flexible CMS to create and manage enterprise multi-sites and a reliable development environment for high-performance apps. With powerful features for developers and a simple UI for editors, it's the ideal engine for state-of-the-art business websites and web-based software.”
For developers, they emphasize:
The creators say, “Netgen Layouts is a layer in your web stack, a full-stack Symfony application that can be integrated with other Symfony apps (such as Ibexa/eZ Platform CMS or Sylius eCommerce) or used independently with headless information systems (such as Contentful CMS). It renders web pages based on layouts arranged by "site builders (web designers)".
They emphasize the abilities to:
I hope I will be able to do this, but it will be tough (for me).
My most manageable goal, and one that will be accomplished, is rebuilding and upgrading this site to Drupal 10 with a new theme.
Will it be a custom theme I build? Will I customize the new default theme? Or will I build one with the new starter kit capability? I don’t know yet.
But now that I am semi-literate in Drupal, I can clean up the backend. And the frontend can be designed the way I want it to look rather than modifying a 3rd party theme.
However, I won’t do this until auto-updating is functional in Drupal later in the year. As we all know updating Drupal core is a pain in the ass. This is the best reason to upgrade to 10.
In the meantime, I will take several local dev workshops at DrupalCamp Florida to boost my crap local development skills. And possibly a Git course for my super crap git skills. If you have a recommendation, let me know on Mastodon.
As you probably know Drupal 10’s new features include:
As you can see, I’ve set quite a set of challenges this year.
This article is the most personal and non-evergreen one to date. So, if you read it, thanks.
Hopefully, you learned a few things about Sword, Sulu, Netgen Layouts, and Drupal 10. And we’ll find out how much I accomplish this year.
Thanks for visiting, and keep coding Symfonistas!
Symfony Station covers the essential news in the Symfony, PHP, and Fediverse development communities with a focus on protecting democracy. Please use the button above to make a small donation to help cover our out-of-pocket costs. Our labor is provided free of charge to support the communities we write about.
Subscribe to The Payload, our weekly newsletter exploring the Symfony Universe.