Contao news

Read the official Contao announcements.

Contao 4.0.0-beta1 is available


Contao version 4.0.0-beta1 is available. Please do not use beta versions for productional websites! Download the release to check whether your website or custom extension needs adaptation.

Here are some of the highlight features in the new version. For a complete list, please read the changelog or check out the closed tickets of the release milestone (see the links at the end of the announcement).

Symfony bundle

Contao is now a Symfony bundle, which can be added to any Symfony application to provide CMS functionality. A fully pre-configured Symfony application, which you can use as a starting point, is available at contao/standard-edition.


At the moment, you can only install Contao 4 via Composer on the command line:

php composer.phar create-project contao/standard-edition <target> 4.0.0-beta1

Once the Composer installation has been completed, you have to open the Contao install tool, which is now under /contao/install (formerly /contao/install.php).

In the future, it will also be possible to install Contao in the browser using the Composer package manager or a separate install tool. If you want to add Contao to an existing Symfony application, check out the installation instructions of the core bundle.

Developer documentation

The following, partly new markdown files contain developer information:

  • Change log
  • Deprecated functions
  • Known limitations
  • Missing features
  • Backwards incompatible changes
  • Versioning hints

Git repositories

Contao 4 is modular and includes the following repositories:

  • contao/core-bundle Contao core
  • contao/calendar-bundle Calendar extension
  • contao/comments-bundle Comments extension
  • contao/faq-bundle FAQ extension
  • contao/listing-bundle Listing extension
  • contao/news-bundle News extension
  • contao/newsletter-bundle Newsletter extension
  • contao/standard-edition Pre-configured Symfony application

In addition, there is the contao/contao meta package, which can be used to require all the bundles mentioned above (except for the standard edition) at once:

"require": {
    "contao/contao": "~4.0"

.htaccess binding

Contao 4 does not use .htaccess files anymore and thus removes the Apache web server binding. Instead, there is now a subfolder named web/, which is used as document root. All public resources are either stored there or linked there using symlinks.

New system requirement: Symlinks must be supported on PHP level and the web server must follow them. The corresponding Apache directives are FollowSymlinks or SymLinksIfOwnerMatch.

Omission of the Safe Mode Hack

The Safe Mode Hack, which was used as a crutch for insufficiently configured servers, is omitted in Contao 4. On the one hand, it has caused too many issues in the past and on the other hand, neither the Composer package manager nor Symfony is compatible with it.

New system requirement: The web server needs to be configured to support file operations via PHP.

Omission of the XHTML support

In Contao 4, the XHTML support is omitted, which means that you can only generate HTML5 websites. The corresponding templates with the .xhtml file extension have been removed and page layouts only support the "HTML5" output format.

Backwards incompatibility: Existing XHTML websites need to be converted to HTML5.

HTML markup changes

All tickets implying an HTML markup change (such as using <strong> instead of <span>) or a CSS class change (such as using previous instead of prev) have been closed. All changes have been thoroughly documented in the file.

Backwards incompatibility: Existing CSS formattings might have to be adjusted.

Deprecated constants

The constants TL_ROOT, TL_MODE, TL_START, TL_SCRIPT and TL_REFERER_ID are deprecated in Contao 4 and only remain available for reasons of backwards compatibility. You should use the Symfony container instead (siehe

RTE templates

The configuration files of the rich text editor (TinyMCE) and the code editor (ACE) are now real template files, which can be adjusted in an update-safe manner using the template editor in the back end. The templates are called be_tinyMCE.html5 and be_ace.html5.

Also see: GitHub tickets | GitHub compare view | Contao changelog | Release overview

Back to the news overview.


Add a comment

Please add 6 and 9.