A bundle in Symfony (and eZ Platform) is a separate part of your application that implements a feature. You can create bundles yourself or make use of available open-source bundles. You can also reuse the bundles you create in other projects or share them with the community.
Many eZ Platform functionalities are provided through separate bundles included in the installation. You can see the bundles that are automatically installed with eZ Platform in composer.json.
Working with bundles¶
All bundles containing built-in eZ Platform functionalities are installed automatically. Additionally, you can install community-developed bundles from eZ Platform Packages.
To learn how to create your own bundles, see Symfony documentation on bundles.
Overriding third-party bundles¶
When you use an external bundle, you can override its parts, such as templates, controllers, etc. To do so, make use of Symfony's bundle override mechanism. Note that when overriding files, the path inside your application has to correspond to the path inside the bundle.
To remove a bundle (either one you created yourself, or an out-of-the-box one that you do not need), see the How to Remove a Bundle instruction in Symfony doc.
The following tables give an overview of the main eZ Platform bundles.
|ezplatform-kernel||contains the core of the whole eZ Platform application e.g. EzPublishCoreBundle|
|ezplatform-content-forms||provides form-based integration for the Symfony Forms into Content and User objects in kernel|
|ezplatform-solr-search-engine||Solr-powered search handler for eZ Platform|
|ez-support-tools||provides functionality for system information|
|ezplatform-http-cache||HTTP cache handling for eZ Platform, using multi tagging (incl Varnish xkey)|
|ezplatform-admin-ui||contains Back Office interface for eZ Platform v2+|
|ezplatform-admin-ui-assets||contains assets for AdminUI|
|ezplatform-design-engine||design fallback system for eZ Platform similar to legacy design fallback system|
|ezplatform-standard-design||defines standard Design and Theme to be handled by ezplatform-design-engine|
|ezplatform-cron||exposes cron/cron package for use in eZ Platform (or just plain Symfony) via a simple command
|ezplatform-graphql||defines GraphQL server for eZ Platform|
|ezplatform-matrix-fieldtype||dedicated to Matrix Field Type for eZ Platform, it replaces previous version found on
|ezplatform-query-fieldtype||Field Type that lists Content items based by querying the Repository|
|ezplatform-rest||contains REST API|
|ezplatform-richtext||Field Type for supporting rich formatted text stored in a structured XML format|
|ezplatform-user||dedicated to eZ Platform User management.|
|BehatBundle||common reusable sentence implementations and other common needs for Behat testing in bundles/projects|
|date-based-publisher||provides the date based publishing functionality for eZ Platform Enterprise Edition|
|ezplatform-workflow||implementation of a collaboration feature that lets you send content draft to any user for a review or rewriting|
|ezplatform-page-fieldtype||Page handling Field Type|
|ezplatform-page-builder||contains eZ Platform Page editor|
|ezplatform-http-cache-fastly||extends ezplatform-http-cache to support Fastly, for use on Platform.sh PE or standalone|
|ezplatform-calendar||extends the Back Office by adding the calendar tab with the calendar widget|
|ezplatform-version-comparison||allows comparing between two versions of the same Field|
|ezplatform-form-builder||enables creating Form Content items with multiple form fields|
|ezplatform-site-factory||enables configuration of sites from UI|
|ezplatform-elastic-search-engine||provides integration with Elasticsearch search engine|
|ezplatform-multi-file-upload||allows uploading multiple files as new content items at once|
|ezplatform-demo-assets||contains binary install data for ezsystems/ezplatform-demo|
|ezstudio-personalized-block||Ibexa Personalized Block Bundle|
|ezplatform-com||the Ibexa Developer Hub for the Open Source PHP CMS eZ Platform (example site)|
|ezplatform-ee-demo||fork of the "ezplatform-ee" meta repository, contains changes necessary to enable eZ Platform Enterprise Edition Demo. Not recommended for a clean install for new projects, but great for observation and learning (example site)|
|ezplatform-ee-beginner-tutorial||resources used in the eZ Platform Enterprise Edition Beginner Tutorial|
|docker-php||contains PHP docker image example|
Documentation - additional resources¶
|developer-documentation||source for the developer documentation for eZ Platform, an open source CMS based on the Symfony Full Stack Framework in PHP. https://doc.ezplatform.com|
|user-documentation||source for the user documentation for eZ Platform, an open source CMS based on the Symfony Full Stack Framework in PHP|
|ezpersonalization-documentation||source for the eZ Personalization documentation for eZ Platform, an open source CMS based on the Symfony Full Stack Framework in PHP|