In an earlier post, we questioned the statement that "WordPress is the world's number 1 CMS." At the same time, we pointed out a number of features that made us start looking for an alternative to this undoubtedly most popular content management system in the world.
So we set ourselves the goal of analyzing the available free cms systems and possibly choosing one that would speed up and optimize our web development process.
Table of contents
What is Sulu CMS?
Sulu is a CMS, the backend part of which is written based on the Symfony framework, which we have been working with continuously for more than 10 years (from version 1.4 until today, when, at the time of writing this post, the current version is 6.1). Why is it so important to us? Mainly because it is an extremely flexible framework, which has allowed us to create great dedicated applications and corporate websites on more than one occasion. However, we have always had to use libraries imitating CMS, which had to be equipped with additional features in order to be able to talk about a solution that fully meets the needs of a search engine optimized website. In the case of Sulu, many of the basic functions were included in the CMS itself, which greatly speeds up our work and only requires the proper configuration of the system. Due to the fact that Symfony was created with highly scalable web applications in mind, we are finally dealing with a content management system that is fast, secure and easy to extend.
Shorter deployment time, lower costs
Thanks to the fact that Sulu is a CMS that is well tested and written according to good practices, we are able to build even more complex and personalized solutions tailored exactly to business needs. We no longer have to implement a lot of repetitive tasks from scratch (user management, static pages, etc.), focusing only on implementing custom application business logic. With this approach, we significantly reduce the time and thus the cost of implementing the services. In addition, due to the CMS' ability to operate in headless mode, we can create advanced administrative panels independently of the front-end application visible to the end user.
And what if we need to add another administrative panel element, available later on the frontend? Nothing easier! Thanks to the solutions known from Symfony, it is enough, with a few commands, to generate the appropriate models and then, based on them, new tables were created in the database. This approach, combined with the use of system configuration via xml, gives you really enormous flexibility in creating custom features.
The most interesting modules available in Sulu CMS
Some of the modules found in Sulu are rather standard elements of any Content Management System. Thanks to their architecture, these modules work really quickly and reliably.
However, Sulu is also a number of solutions that significantly assist administrators in the process of managing the site's content. Below we have presented those, in our opinion, the most interesting ones.
The module is useful for anyone who wants to preview "live" how his content will look like before publishing his entry. What is most interesting, the mentioned live preview is available in full responsiveness - it is possible to preview the content on a mobile device, tablet and desktop! Thanks to such a solution, we eliminate quite often occurring editorial errors even before the sub-page is exposed to the light of day!
The solution is ideal for those who have a site available in multiple languages but do not have the ability/time/budget to create appropriate content in each of them. Shadow pages allow you to display content only in selected languages in which the content is located. Thus, it is possible to prepare a blog post aimed exclusively at the Polish market but omitting the other languages.
The main concept when managing content in Sulu is to create unique blocks available within layouts. So we can have special blocks for editing content, for sliders, forms and many other solutions. These blocks can often be very elaborate. So to save editing time, the ability to copy entire blocks and then edit them was added. Combined with the pre-existing drag & drop options, we make everything fast, easy and fun!
Next to live preview, our personal favorite when it comes to key modules of the system. The ability to define dynamic forms, equipped with fields from the available pool of dozens is truly a "killer feature." Well-styled forms, combined with addressee and sender fields, is something that changes the way inteactions between the user and the site owner are created. In addition, the ability to plug in symphony events and thus additional integrations (e.g. newsletters) makes implementation incredibly easy.
Quite a popular module that allows you to preview who made the latest changes to the system. And here we don't have too much to add - no more changes to pages for which no one is responsible.
Media management, predefined formats and appropriate image cropping.
A very powerful media management module is one of the main strengths of the system. The ability to create directories with non-standard permissions, create image formats and use the most customized ones, automatically generate webp (and other) files based on the original ones or, finally, the ability to describe media in any of the configured languages are undoubted assets of this solution.
An additional feature of this module is the photo cropping module - automatic or manual. Full freedom.
The last among the highlighted modules, however, which is created with the requirements of a fully efficient content management system in mind. No plug-ins, no paid add-ons. Just additional system configuration in XML, clearing the cache and.... we have a new language!
Interestingly, it is also possible to define any translation of the admin panel itself, not just the content in them. So any administrator can have the admin panel in the language that suits him!
When to use Sulu as a CMS for your solution?
The applications of this CMS are really quite a lot. We, due to its increasing use, can say that in addition to complex stores, we can implement it for almost any website. In order to streamline our work, we even prepared a set of about 180 components that significantly speed up our work on our implementations.
However, in general, apart from standard websites, Sulu is ideal when:
- you have complex user flow scenarios on the site
- you need to integrate external data
- you care about the speed of the solution; performance is crucial to you
We find really many reasons for its use. These include:
- CMS ready to use right after installation
- Fully customizable
- Built on a set of powerful components
- Saves developers' time (repetitive tasks)
- Easy knowledge transfer and sharing (framework)
- CMS Headless
- Ability to focus solely on the backend
- Separate frontend application
- Reach any customer: mobile, web, tv, thanks to any app for the end customer....
- Reusability of content on different devices
- Security (full automated tests)
- Performance and scalability