About Contao 6.0
The first stable version of Contao 6.0 has been released on 26 August 2026 and will be the successor to Contao 5.7. 6.0 will be updated until 14 February 2027, after which it will be replaced by Contao 6.1.
Changelog Contao 6.0
Contents
Contao 6.0.0 (2026-08-26)
Changelog of the fixed issues in Contao 6.0.0:
-
#10144
Support
allowHtmlon only thecaptionfield in the meta wizard ( zoglo ) - #10152 Skip JSON values in the output encoding migration ( ausi )
- #10148 Remove redundant entity decoding ( Toflar )
-
#10143
Remove usage of the obsolete
$strTagEnding( ausi ) - #10141 Fix double encoded values in the calendar and news bundle ( zoglo )
-
#10133
Move the
backendWidthfield into the back end settings ( zoglo ) - #10114 Do not double encode the page title and description ( ausi )
-
#10099
Do not deprecate
Input::get()for dynamic URL parameters likeauto_item( ausi ) - #10096 Use the existing close and chevron icons in the form stylesheets ( leofeyer )
-
#10098
Replace the
doctrine/ormconflict withsymfony/doctrine-bridge( ausi )
Changelog of the fixed issues in Contao 6.0.0-RC2:
-
#10092
Replace the remaining
|insert_tag_rawwith|insert_tag_html( leofeyer ) - #10087 Use the "correct" TinyMCE package ( leofeyer )
- #10085 Upgrade to ALTCHA v3 ( leofeyer )
- #10082 Ensure a minimum stroke width for SVG icons ( leofeyer )
-
#10056
Add
insert_tag_rawto theUPGRADE.mdfile ( ausi ) -
#10069
Store the page name in the
HtmlHeadBagand use it in the breadcrumbs module ( ausi ) -
#10066
Increase the size of
tl_log.browser( ausi ) - #10042 Use a higher priority for the output encoding migration ( zoglo )
-
#10041
Use a Twig template for the
{{news::*}},{{event::*}}and{{faq::*}}insert tag ( ausi ) -
#10038
Deprecate the obsolete
HtmlDecoder::inputEncodedToPlainText()method ( ausi ) -
#10037
Rename the
insert_tag_rawTwig filter toinsert_tag_html( ausi ) -
#10035
Drop
ChunkedTextand pre-escapeinsert_tag_rawinstead ( ausi ) -
#10032
Fix the permission check of the
pasteintooperation ( lukasbableck ) - #10034 Fix output encoding in insert tags, newsletters and templates ( ausi )
Changelog of the new features in Contao 6.0.0-RC1:
- #10018 Add a reusable "column to virtual" migration ( leofeyer )
- #9584 Improve the UX of the tooltip controller ( zoglo )
- #10013 Return the default values from the schema in models ( ausi )
-
#9999
Add ARIA labels where there is no
<label>element ( leofeyer ) - #9983 Allow Symfony 8 ( Toflar )
-
#10001
Remove the deprecated
Backend.Themescripts that already have Stimulus alternatives ( zoglo ) - #9992 Add a simple token filter for Twig ( ausi )
-
#8349
Add a "paste into" operation to the
DC_Tableparent view ( lukasbableck ) - #9548 Remove the legacy migrations from the Stimulus controllers ( zoglo )
- #9540 Remove the deprecations from the calendar bundle ( zoglo )
- #9981 Only add custom form field classes to the outer container ( leofeyer )
- #9565 Allow adding a primary image to a page and use it in the JSON-LD ( lukasbableck )
- #9962 Remove the deprecated child record callback ( ausi )
-
#9944
Deprecate
Input::get('language')( ausi ) - #9947 Remove obsolete widget attributes ( ausi )
- #9557 Add the output encoding migration ( ausi )
- #9576 Add an option to change news JSON-LD type ( lukasbableck )
- #9946 Convert basic entities to Unicode for non-HTML fields ( ausi )
-
#9945
Remove the
Input::setPost()usages ( ausi ) -
#9943
Remove
Input::setGet()fromDC_Table( ausi ) -
#9942
Deprecate most methods of the
Inputclass ( ausi ) -
#9930
Do not include country codes in
tl_member.language( ausi ) -
#9941
Do not use
Input::setGet()in the search module ( ausi ) - #9938 Enable double encoding ( ausi )
-
#7430
Replace more
$GLOBALS['objPage']with the page finder service ( leofeyer ) -
#7014
Replace
$GLOBALS['objPage']with the page finder ( leofeyer ) -
#9582
Use the
manifest.jsonfile in theImage::getHtml()method ( zoglo ) -
#9534
Deprecate extending from
Module,ContentElementandHybrid( Toflar ) - #9541 Remove the deprecations from the comments bundle ( zoglo )
- #9542 Remove the deprecations from the FAQ bundle ( zoglo )
- #9543 Remove the deprecations from the manager bundle ( zoglo )
- #9544 Remove the deprecations from the news bundle ( zoglo )
- #9545 Remove the deprecations from the newsletter bundle ( zoglo )
-
#9572
Remove the deprecated
customSchemaOptionssupport ( fritzmg ) -
#9577
Implement a proper
{{file::*}}insert tag based on the VFS ( Toflar ) -
#9551
Rename the user templates namespace to
@Contao_User( m-vo ) -
#9536
Drop the deprecated
FilterPageTypeEventservice ( Toflar ) -
#9599
Rename
var/logstovar/log( leofeyer ) - #9566 Remove the Symfony bundle templates ( m-vo )
- #9546 Remove the bundle migrations ( zoglo )
- #9556 Remove Swift Mailer support ( bytehead )
-
#9558
Drop support for
doctrine/dbalv3 ( Toflar ) -
#9535
Drop the deprecated
EntityCacheTagsservice ( Toflar ) - #9533 Add VFS public Uri handling capability to the player ( fritzmg )
- #9498 Rework the public file handling in the VFS ( Toflar )
-
#9524
Drop the
RenderPageEvent( Toflar ) -
#9505
Remove input encoding in the
Widgetclass ( ausi ) -
#9485
Move the
flexibletheme into the build chain ( zoglo ) - #9484 Remove the legacy template system ( m-vo )
- #9332 Use PHP native lazy objects ( fritzmg )
- #9414 Change all SQL definitions to array notation ( fritzmg )
- #9482 Remove merging legacy headers ( Toflar )
- #9480 Remove the global request token for templates ( aschempp )
- #9483 Drop the deprecated message priority interfaces ( Toflar )
- #9479 Remove support for service annotations ( aschempp )
Changelog of the fixed issues in Contao 6.0.0-RC1:
-
#10030
Replace the remaining
Inputusages ( ausi ) - #10029 Encode user properties in the backend header menu ( ausi )
-
#10027
Update the
DEPRECATED.mdandUPGRADE.md( leofeyer ) - #10023 Stop using the deprecated Doctrine DBAL methods ( leofeyer )
-
#10022
Remove the
generate()method from frontend form widgets ( ausi ) - #10020 Add more output encoding ( ausi )
-
#10021
Remove unused
Backendmethods ( ausi ) -
#10019
Do not return
nullfor non-null columns in models ( ausi ) -
#10006
Remove the
Inputclass from theDcaUrlAnalyzer, operations, the palette builder, and several listeners ( ausi ) - #9997 Autolink URLs in comments and make them plain text ( ausi )
- #9977 Change "Contao 6" to "Contao 7" in the deprecation messages ( leofeyer )
- #9988 Remove old configuration nodes deprecated since Contao 4 ( leofeyer )
-
#9989
Wrap the active breadcrumb item in
<strong>tags ( leofeyer ) - #9994 Remove BBCode ( ausi )
- #9990 Move to a newer DBAFS hashing algorithm ( m-vo )
- #9986 Prevent changing the password in the "personal data" module ( leofeyer )
-
#9987
Deprecate
$strIpin user classes ( fritzmg ) -
#9980
Generate the form data XML file using
DOMDocument( leofeyer ) -
#9979
Remove the setters from the
RecordLabelclass ( ausi ) - #9969 Encode and sanitize widgets and options ( ausi )
-
#9966
Add a
RecordLabelobject for the label callback ( ausi ) - #9974 Ensure that ampersands in URLs are correctly encoded ( leofeyer )
- #9968 Do not encode ampersands in the back button URL ( leofeyer )
-
#9965
Use
findById()instead ofgetRelated()( leofeyer ) - #9967 Encode labels in the "show" modal ( ausi )
- #9963 Encode the group header in the parent view ( ausi )
- #9952 Correctly encode the content label ( ausi )
- #9954 Properly encode member group labels ( ausi )
-
#9892
Fix the missing
$objPageinFrontendTemplate::setCacheHeaders( aschempp ) - #9628 Use a delegate template when rendering Twig components ( m-vo )
-
#9578
Fix the
FigureRendererdefault template ( m-vo ) -
#9568
Remove all usages of
StringUtil::ampersand()( m-vo ) - #9506 Use the response context to generate the nonce ( bytehead )
- #9497 Increase the minimum Doctrine ORM version ( fritzmg )