Sulu 1.3

Sulu 1.3

We are happy to announce the release of version 1.3.0 of our content management solution. A lot of hard work has been put into this release and this blog post will explain the most important changes.

Technical Changes

Postgres Support:
Some of our users had that on their wish list for some time and now we've finally plucked up the courage and implemented it.

Entity Routing:
With the 1.3 release Sulu provides a RouteBundle which allows you to use advanced routing functionality for your custom entities. Check out our documentation for more details.

Drafting

The drafting is the first of two bigger features in this release. It enables the user to work on a draft of a page without affecting the published version by using a completely separated instance. A draft can then be published at any time.

For this feature the toolbar of the page has changed a bit. The "Save" button now contains the options "Save as draft", "Save and publish" and "Publish". Also, the publishing state indicator (the yellow or green icon) is now controlled by the new options introduced in the toolbar.

Have a look at the drafting documentation to see more technical details.

Text Editor

The text editor component has also received some new features:

Internal Links:
We created an internal link plugin to the ckeditor which allows to add a link inside the text directing to another page managed in Sulu. This has the advantage that changes of the URLs are also considered respectively the text editor highlight links which have been deleted.

Asset downloads:
This plugin is similar to the internal link plugin. The only difference is that you link to assets instead of pages. Be aware that this is solely a download link and does not allow to put images inside the text editor.

MarkupBundle:
The MarkupBundle is the technical base for the previous two features but it can also be used standalone. It basically allows to introduce custom HTML tags which will be replaced by standard HTML so a browser can understand them. The documentation explains how to add your own custom HTML tags.

Lazy start:
The text editor is a quite heavy JavaScript component and often has a serious performance impact. Especially if you have lots of text editors in a single template. We have circumvented that problem by implementing a lazy start. This means the text area is shown as simple text without formatting at start and the rich text editor appears only after the user clicked on the field.

Easier installation

We have also worked on making it easier to get Sulu running. That resulted in three specific improvements:

Sulu minimal:
We have introduced a new Sulu edition named minimal. It follows the new Symfony3 directory structure and has an easier configuration. It also comes with a very stripped down theme which makes it easy to see how Sulu works.

Extracted theming:
In order to make Sulu minimal as "minimal" as possible we've decided to extract the theming component. Many websites come along with only a single theme and in such a case the theming component only adds complexity without any advantages. If you still want or have to use theming you can include the SuluThemeBundle. See the documentation for more details.

Server commands:
The fastest way to get Sulu running is to use the built-in PHP webserver as suggested in the Symfony documentation. We've made the usage of this commands a lot easier in combination with Sulu. Before 1.3 you had to pass some arguments (e.g. which router to user) otherwise Sulu wouldn't work. We have overridden these commands so a simple "app/console server:run" is now enough to get Sulu running.

General improvements

There are many minor improvements in Sulu 1.3 so it's impossible to list all of them here. But I would like to highlight at least a few of important ones:

Dutch translation:
Thanks to the work of Giso Stallenberg Sulu is now also available in Dutch. THANK YOU!!!

XIncludes for templates:
Instead of repeating the same block over all templates again and again you can use XIncludes now. There is also a documentation available for this new feature.

Support for Google Tag Manager:
This is another type available for the analytics feature introduced in Sulu 1.2. So instead of using our custom script for the Google Tag Manager you can simply use its new type in our system and by passing your key.

Media categories:
Instead of only tags you can now add also categories to any media.

Summary

Besides the big drafting and text editor features Sulu 1.3 includes lots of improvements and bugfixes. We have also updated the documentation. So there's nothing holding you back from downloading our new release. Please test it and give us feedback. We really appreciate it!