Global navigation

   Documentation Center
   eZ Studio & eZ Platform
     User Manual
     Technical Manual
   eZ Publish 4.x / legacy

eZ Publish (5.x)

eZ Publish 5.x | For eZ Platform & eZ Studio topics see Technical manual and User manual, for eZ Publish 4.x and Legacy topics see eZ Publish legacy

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


This page represent a comparison between Legacy Stack vs 5Stack (aka "4.x" stack) vs New Stack Stack (aka Symfony Stack, aka "5.x"- or "6.x Stack).
This means that features "-stack) and will be attempted to be kept up to date as new stack matures. Note: Features mentioned on the black list are still available in 5.x, but only via legacy kernel so you will need to use only "pure legacy" or a mix of bothmixed setup using "legacy fallbacks"


Known existing integration (white list):

5.x Feature4.x nameFeatureNotesNote/Limitation
Content Model 
5.x aimed at not adding any features in the content/data model to make sure no breaks happened in 4.xthat would lead to backwards compatibility breaks, new features will instead be introduced as when we approach reach 6.x with new storage engines that can support themand beyond.
Content(Content) Object


Content RelationsObject Relations 
Field(Content) AttributeMissing FieldTypes will cause eZ Publish to return exception, this can be avoided by implementing<TODO:Link to Add link when article on this> the FieldType or configuring it as "NullType"
FieldTypeDataTypeSee FieldTypes for list of supported types, known unsupported FieldTypes are mentioned in Known issues




ContentType(Content) Class 
FieldDefinition(Content) Class Attribute 
FieldGroups(Content) Class Attribute Grouping 
UserGroup Can by design (and intention) only have one location in 5.x when using Public API UserService
Policy Limitation  
Role Limitation  
Role Assignment Currently not possible to delete specific assignment by id, can be deleted by Role and User.
Public APIn/aLegacy/4.x does not have a official public API, almost all internal functions are exposes publicly
REST 5.1 and higher includes a working read/write REST v2 API
Development environmentDevelopment mode In 5.x this is provided by Symfony, and web debugger is extended by eZ Publish, additional debugging planned and in progress as "pull request".
Web stack 5.x web stack is Symfony with several 4.x eZ features on top
(Twig) Template system(eZ) Template system 
View ProviderOverride systemRestricted to viewLocation in 5.0 and additionally , viewContent added in 5.1, for changing presentation logic.
Controller overriden/a5.2 added feature for being able to also use override system of View Provider to also be able to override content controller under your own conditions to be able to modify behavior.
Theme systemDesign systemInitially planned for 5.2 using Planned to use LiipThemeBundle, but not in yet and postponned to potentially in version 5.3.
HTTP CacheView- / Static- CacheFor anonymous users in with content aware caching since 5.0/5.1, also for all users using "userHash" in logged in users with context aware caching since 5.2
Site(Access)Groupingn/aNew in 5.x
CSRFeZ FormTokenProvided by Symfony
Persistence cacheCluster- / Class- / ClassAttribute- / var- / "Global"- cacheIntroduced in 5.1, currently missing support for multi repository (aka multi-db) setups support added in 5.2.
IOCluster (-ing of files)Currently uses 4.x cluster system in the backend, new and simpler file clustering is possible when new storage engine is created in the futureplanned for 6.x.
Multi RepositoryMulti-dbSome features, notably Since 5.0, Persistence cache got does not support for this in 5.21.

Known missing in Symfony stack (black/grey list):

Note: missing Missing integration doesn't mean the system can not use the feature in a new installation relying on the new stack, but if it needs, it shall rely on a fallback to the legacy stack and the legacy kernel. For instance: a website with a shop system could be done in twig and rely on legacy only for the fallback for shop parts.

RatingUser Rating not currently supported by API (the service to deal with ratings, rating field type already exists), planned to be implemented later when some convention for FieldType provided API's are established.
ShopNo shop or field(/data) types related to shop currently supported by APIComment, see Known issues. This is planned for "6.x" or a release shortly thereafter.
eZCommentezcomments is not supported by API, and is not planned to be supported either. Instead of having it part of the API, we are replacing it was replaced in 5.2 with a bundle CommentsBundle that will provide an agnostic system to integrate 3rd party comment services. It will out Out of the box show supporting Disqus and Facebook integration but can also integrate via custom integration can also work with other 3rd party as well as home made or even, why not, a port of the legacy eZ Comment system (which is not the way we will pursue for the product).systems (example: service, content model based comments or even ezcomments)
Content EditingContent editing module is not implemented yet, so currently only raw editing support needs to be implemented on top of REST/Public API directly or on top of the JS library that wrap the REST API and expose it to javascript code simplybut custom needs can for instance be solved with Public API+Symfony controllers or use of javascript REST client + REST API.
Module PermissionsController / Bundle Permissions is not integrated with eZ Publish permission system yet, currently standard Symfony firewall rules need to be used. Public API however has full support for permissions and limitations, and is as of 5.2 known to support legacy most edge cases.
UrlAlias RoutingUrlAlias has the same model as before and hence does not support routing directly to a bundle:controller:action
WorkflowPlanned for future version, see Shop. Simple workflows already possible by using Symfony evens and Public API "Signals".
Information CollectorPlanned to return as a new Form feature in future versionsForm builder UI basically using Symfony Forms + swiftmailer for mail transport, might reuse content types similarly to how Information Collector did it.
Package systemPlanned to return as a import/export system which uses either API or SPI directly to replicate some or full amount of content from one repository to another, preferred format: XML using XML reader/writer.
Menu managementCould be re introduced in the future as a multi site safe Site configuration featureNot currently planned, might come back in the form of page layout designer (using similar concepts as ezflow).
PDF ExportNot currently planned, should could be re-implemented outside of Core
RSS feedsCurrently no API for managing RSS feeds, REST view can be used as basis of feeds.
Frontend Editing

See "Content Editing".

Be aware that eZ Flow timeline feature is not available in the legacy admin (only in front end editing), hence not usable on the new stack.

PreviewPlanned for 5.3, versions before that uses legacy for preview.
SearchSearch API exists, but front end is currently using legacy fallback (ezfind & ezsearch) and 5.x Search SPI Solr implementation is currently not finished yetwork in progress but rapidly maturing as of 5.2.
User moduleUser login, login handlers, change-password, forgot-password, register, profile and editing currently uses legacy fallback, planned for 5.3
oAuth 2.0oAuth 1.0 supported in REST v1 in legacy, planned for new stack and REST v2 for future 5.x version.
Extensions(aka Bundles)
eZ TagsWe are working on either integrating more deeply eZ tags or rebuilding a solution as part of the API. (note: eZ Tags is not clearly supported in 4.x)Planned for future 5.x version, still community supported in legacy stack on 5.x.
eZ SIeZ SI is purely legacy, not required in Symfony as it support ESI natively. We lost a differentiation for the Enterprise version here,ez SI is still supported in legacy stack on 5.x.
eZ Content stagingNo equivalent yet on the new stack, still supported in legacy stack on 5.x.
eZ Style editorNo equivalent on the new stack, still supported in legacy stack on 5.x up until 5.1.
eZ SurveyNo equivalent yet on the new stack, still supported in legacy stack on 5.x.

Note: All missing features are still available in legacy stack bundled with eZ Publish 5.x, this fact sheet is purely about 5.x vs 4.x (legacy).

For additional on supported legacy features see: