Discover Sulu CMS – a flexible, efficient, and scalable content management system built on the Symfony framework. Find out why it is the perfect choice for demanding enterprise projects and multilingual websites.
Table of contents
Sulu is a modern, open-source content management system (CMS) built entirely on the Symfony framework—the most popular PHP framework used to create complex web applications. It was created by professionals for professionals, with demanding corporate projects, multilingual websites, and complex internet portals in mind.
Unlike popular CMS systems that grew out of blogging platforms (such as WordPress) or social networking systems, Sulu was designed from the outset as an enterprise-grade CMS - a system capable of handling complex information structures, diverse audiences, and heavy traffic.
Sulu is not just another WordPress clone. It is a completely different approach to content management, based on several key assumptions:
Firstly, separation of content from presentation. In Sulu, all content is stored as structured data, regardless of how it is displayed. This means that the same content can be displayed in different formats (HTML, JSON, XML) and on different devices without the need to duplicate information.
Secondly, a professional technical foundation. Sulu uses proven Symfony components, which guarantees high code quality, ease of maintenance, and expandability. For developers familiar with Symfony, Sulu is a natural extension of their toolkit.
Thirdly – native multilingualism and multisite. While other CMS systems require additional plugins to support multiple languages or multiple sites, Sulu offers these features “out of the box,” optimized for performance and ease of use.
The history of Sulu dates back to 2013, when Austrian digital agency MASSIVE ART WebServices GmbH began work on a new CMS system. The goal was to create a platform that would respond to the real needs of projects carried out for corporate clients – something that was lacking in existing open source solutions.
The founders of Sulu – a team of experienced developers from MASSIVE ART – repeatedly encountered the limitations of popular CMS systems. WordPress worked well for simple projects, but quickly revealed its weaknesses when faced with complex corporate requirements. Drupal offered greater flexibility, but at the cost of complex architecture and a steep learning curve.
They decided to create a system from scratch, using modern technologies and best programming practices. They chose Symfony – a framework that offered a solid foundation but did not impose the limitations typical of ready-made CMSs.
| Year | Event |
|---|---|
| 2013 | Commencement of work on Sulu as an internal project at MASSIVE ART |
| 2014 | First public release of Sulu 1.0 |
| 2018 | Spin-off of Sulu into a separate company (Sulu GmbH) |
| 2020 | Release of Sulu 2.0 with a completely rewritten admin panel (React) |
| 2023 | Sulu 2.5 with full support for Symfony 6 and PHP 8.3 |
| 2024 | Introducing Sulu.ai – AI support for content management |
| 2025 | Sulu 2.6 with a new ReferenceBundle and extended API; launch of Sulu.cloud |
Community and ecosystemAlthough Sulu cannot boast numbers comparable to WordPress (which powers over 40% of websites on the internet), it has one of the largest developer communities among Symfony-based CMS systems. This is due to a simple fact – every Symfony developer is potentially a Sulu developer.
The active community focuses on:
Understanding Sulu's architecture is key to taking full advantage of the system's capabilities. Sulu was designed with modularity, extensibility, and performance in mind.
Sulu is entirely based on Symfony – a professional PHP framework used by the world's largest technology companies. Symfony provides:
Bioza means that every Symfony component can be used in Sulu without any restrictions. Need integration with an external API? Symfony HTTPClient. Want to add task queues? Symfony Messenger. Require advanced search? Easy integration with Elasticsearch.
Sulu uses a layered architecture with a clear division of responsibilities:
Data layer (Entities) Represents data structures – pages, media, snippets, users. Sulu uses Doctrine ORM for object-relational mapping, which provides flexibility in choosing a database.
Business logic layer (Controllers/Services) Contains all application logic – request processing, validation, data transformations. Thanks to the use of Symfony services, the logic is modular and easy to test.
Presentation layer (Views/Templates) Responsible for rendering content. Sulu offers three approaches:
Sulu uses PHP Content Repository (PHPCR) to store content structure. PHPCR is a standard API for hierarchical content repositories, optimized for CMS operations (versioning, translations, tree structure).
In practice, data may be stored in:
The media management system in Sulu supports:
Sulu uses Twig, Symfony's template engine, to render pages. Twig offers:
Since version 2.0, the Sulu admin panel has been a Single Page Application built in React. The architecture is based on:
This architecture means that the admin panel is, in fact, an example of a headless implementation – the React frontend communicates with Sulu via an API, just as any other application could.
Sulu offers complete control over content structure by configuring templates in XML files. Instead of being limited to predefined content types, developers define exactly which fields and sections each page type should contain.
Sulu provides a rich set of ready-made field types:
The Blocks feature is a real revolution in content management. It allows editors to flexibly assemble pages from predefined sections – just like LEGO bricks. The developer defines the available block types (e.g., text + image, gallery, CTA, FAQ), and the editor can freely arrange and rearrange them.
This solution eliminates the need to create dozens of template variants and gives editors real control over the layout without interfering with the code.
Snippets are pieces of content that can be used on multiple pages simultaneously. When a snippet is updated, the change automatically propagates everywhere it is used.
Typical uses of snippets:
The media system in Sulu is more than just a simple file manager:
Automatic image processing
Organization and search
Metadata and accessibility
Sulu offers a comprehensive access control system:
The system allows you to create complex scenarios where, for example, editor A can only edit the “News” section in Polish, while editor B has full access to the entire German website.
Live Preview – preview edited content in real time, with the ability to check how it looks on different devices (desktop, tablet, mobile).
Content versioning – Sulu stores a history of changes, allowing you to:
Scheduled publication – the ability to set the date and time of publication of content in the future.
Contemporary web projects increasingly require separation of the backend (CMS) from the frontend. Mobile applications, SPAs (Single Page Applications), IoT – all these scenarios require access to content via API rather than traditional HTML rendering.
A headless CMS is a content management system that does not have a presentation layer (i.e., a “head”). Instead of generating ready-made HTML pages, it provides content via an API (usually REST or GraphQL), and a separate frontend application is responsible for displaying it.
Sulu offers a hybrid approach - it can be used as a traditional CMS with Twig templates, as a pure headless API, or combine both approaches in a single project.
The simplest way is to add the .json extension to the URL of the page to return its content in JSON format:
https://example.com/about-us → HTML https://example.com/about-us.json → JSON
This solution works “out of the box” and is ideal for simple scenarios, such as loading additional content via AJAX.
For more advanced projects, SuluHeadlessBundle is available – the official package extending headless capabilities:
For projects with very specific requirements – building your own API endpoints using Symfony infrastructure. This approach is the most labor-intensive, but offers maximum control and performance optimization.
Sulu does not force you to choose “either-or.” You can:
This flexibility means that investing in Sulu does not close off avenues for development – the system adapts to the evolving needs of the project.
Choosing a CMS is one of the most important technological decisions in a web project. Let's compare Sulu with the two most popular open source alternatives.
| Aspekt | WordPress | Drupal | Sulu |
|---|---|---|---|
| Market share | ~43% of all pages | ~1.8% of all pages | Niche (enterprise projects) |
| Year of establishment | 2003 | 2001 | 2013 |
| Main application | Blogs, small company websites | Complex portals, institutions | Enterprise, multilingual services |
| Framework | Own | Custom (Symfony components) | Full-stack Symfony |
| License | GPL v2 | GPL v2 | MIT |
WordPress grew out of a blogging platform and still bears traces of it today. Its hook- and filter-based architecture is flexible, but leads to “spaghetti code” in complex projects. The lack of a strict MVC pattern makes testing and maintaining the code difficult.
Drupal offers a more structured architecture and has been using Symfony components since version 8. However, it remains an “all-in-one” system where configuration is stored in a database. This complicates CI/CD processes and the management of multiple environments.
Sulu is a native Symfony application with complete separation of code and configuration. All settings are stored in files (YAML, XML), which fits perfectly into modern DevOps workflows – versioning in Git, automatic deployments, Infrastructure as Code.
Here, the differences are fundamental:
WordPress requires plugins (WPML, Polylang) to support multilingualism. Each plugin has its limitations, performance issues, and licensing costs. Integration with the rest of the ecosystem can be problematic.
Drupal has offered multilingualism in its core since version 8, but the configuration is complicated. It requires the activation of multiple modules and an understanding of complex language architecture.
Sulu was designed to be multilingual from day one. Language and localization support is built into the core of the system, optimized for performance and the UX of the admin panel. Adding a new language is a matter of minutes, not hours.
WordPress is fast enough in its basic configuration. Problems arise with the growing number of plugins and the complexity of the site. Optimization requires caching, CDN, and often specialized knowledge.
Drupal offers solid performance but requires more server resources than WordPress. It scales well horizontally with the right configuration.
Sulu is highly efficient thanks to its Symfony architecture and multi-level caching. Native integration with Varnish and Elasticsearch allows it to handle very high traffic without compromise.
WordPress is the most frequently attacked CMS – not because it is unsafe, but because it is the most popular. Security largely depends on the quality of the plugins used.
Drupal is known for its strong emphasis on security and has a dedicated security team. It is the choice of many government and financial institutions.
Sulu inherits the security mechanisms of Symfony – a framework with a very good reputation in this area. Less popularity also means less interest from attackers.
WordPress – low barrier to entry for end users, but mastering advanced development takes time.
Drupal – steep learning curve for both editors and developers. The system requires a thorough understanding of its architecture.
Sulu – requires knowledge of Symfony, which is a barrier for developers outside the PHP ecosystem. However, for those familiar with Symfony, onboarding is very smooth. The admin panel is intuitive for editors.
Choose WordPress when:
Choose Drupal when:
Choose Sulu when:
Sulu is not a universal solution for everyone – and that is its strength. The system has been designed for specific use cases where it performs significantly better than the competition.
Large companies need systems that:
Sulu meets these requirements while offering flexibility not available in “boxed” enterprise solutions.
Companies operating in multiple markets need:
Sulu solves these problems elegantly and efficiently with its Webspaces concept.
Websites presenting extensive product or service catalogs, where:
Services requiring non-standard business logic:
Thanks to Symfony's architecture, any custom functionality can be implemented directly in Sulu, without the need to create separate applications.
Let's be honest – Sulu is not suitable for:
The admin panel is where editors spend most of their time. Sulu places great emphasis on user experience in this area.
Since version 2.0, the Sulu admin panel has been a Single Page Application built in React. This means:
The Sulu panel was designed with editors' productivity in mind:
The Live Preview feature allows you to see the effect of changes without having to publish them:
The integrated Media Manager offers:
The admin panel is fully translated into many languages, including Polish. Editors can work in their own language, regardless of the languages of the content they manage.
This is an area where Sulu really shines. While other CMSs treat multilingualism as an add-on, in Sulu it is fundamental to the architecture.
Webspace is the basic organizational unit in Sulu. One webspace can support:
Each webspace has its own:
Sulu supports various URL models for language versions:
Subdomains:
pl.firma.com en.firma.com de.firma.com
Path prefixes:
firma.com/pl/ firma.com/en/ firma.com/de/
Separate domains:
firma.pl firma.com firma.de
Each model can be configured independently for different webspaces.
The administration panel offers convenient tools for working with multiple languages:
Managing multiple sites from a single Sulu installation brings measurable benefits:
Sulu was designed to support marketing activities and search engine optimization.
Each page can have the following defined:
The URL Redirects system tracks changes in page addresses and automatically creates 301 redirects. This eliminates the problem of “dead links” when reorganizing the structure of the website.
Sulu encourages semantic content creation by:
Sulu offers native or easy-to-implement integrations with:
Sulu offers content targeting mechanisms:
The built-in form system allows you to:
The true power of Sulu lies in its ability to integrate with other systems.
Sulu has official and community Bundles (extension packages):
| Bundle | Function |
|---|---|
| SuluFormBundle | Advanced contact forms |
| SuluHeadlessBundle | API for headless applications |
| SuluAutomationBundle | Automation of publications and tasks |
| SuluArticleBundle | Extensive article/blog management |
| SuluRedirectBundle | Managing redirects |
| SuluCommunityBundle | Social features (registration, profiles) |
The integration with Sylius, an open-source e-commerce platform also based on Symfony, is particularly interesting. The combination of Sulu + Sylius gives you:
This solution is particularly attractive for companies that need extensive content marketing alongside e-commerce functions.
Thanks to Symfony's architecture, integration with external systems is simple:
In 2024, Sulu launched Sulu.ai, a service that uses AI to:
Server:
Extensions PHP:
Optional (for performance):
Basic installation of Sulu using Composer:
bash
composer create-project sulu/skeleton my-project cd my-project
Next, database configuration and initialization:
bash
bin/console sulu:build dev
Detailed documentation is available on the official Sulu website.
Sulu can be hosted on:
Deployment is performed using standard tools:
At MITS, we have been implementing projects on various platforms for years – WordPress, Drupal, proprietary solutions. Experience has taught us that the choice of technology has long-term consequences for the success of a project and maintenance costs.
MITS specializes in the following technologies:
As a Symfony application, Sulu fits perfectly into our skill set. All of our PHP developers can work with Sulu without additional training—they already know Symfony, Doctrine, and Twig.
We work with clients for years. The projects we create must be easy to maintain and develop. Sulu, thanks to:
....allows us to transfer projects to new team members without weeks of onboarding.
Our projects often start as company websites and evolve over time into:
Sulu grows with the customer's needs. There is no point at which you have to “rewrite everything from scratch.”
As a responsible company, we care about our customers' interests. Sulu is:
...guarantees that the customer is not dependent on a single supplier. If, for any reason, MITS is unable to continue the collaboration, any other company familiar with Symfony can take over the project.
We have completed projects on Sulu for clients from various industries:
This experience translates into proven implementation patterns and knowledge of pitfalls to avoid.
Sulu CMS is a modern content management platform that combines the flexibility of the Symfony framework with a complete set of CMS features. It is not a solution for everyone – it requires technical expertise and does not offer thousands of ready-made templates like WordPress.
However, for projects that:
...Sulu is an excellent choice, providing the foundation for building scalable and reliable web solutions.
| Area | Advantage |
|---|---|
| Architecture | Full-stack Symfony, MVC, extensibility |
| Multilingualism | Native, efficient, no plugins |
| Multisite | Webspaces – multiple websites from a single installation |
| Headless | API-first mode, HeadlessBundle, hybrid approach |
| Admin panel | React SPA, intuitive UX, live preview |
| SEO | Built-in meta, redirects, semantic structure |
| License | MIT – open source without restrictions |
If you are considering Sulu for your project:
Article prepared by the team at MITS Sp. z o.o. – a boutique software house specializing in Laravel, Vue.js, Symfony, and Sulu CMS.
Are you planning a project on Sulu CMS? Contact us - we have been implementing solutions based on Symfony and Sulu for clients from Poland and abroad for years.