Extending eZ Platform¶
You can extend eZ Platform in many ways, including customizing the Back Office and the content model, by adding new Field Types.
Extending the Back Office¶
The Back Office interface is produced by the ezplatform-admin-ui
bundle.
Additionally, ezplatform-admin-ui-modules
contains React modules that handle specific parts of the application.
This interface is accessible in your browser at http://<yourdomain>/admin
.
The Back Office uses React-based modules that make each part of the UI extensible, and Bootstrap for styling.
To extend the Back Office with PHP code, you can use events, either built-in Symfony events or events dispatched by the application. See Extending menus for an example on how to use an event subscriber to extend one of the menus in the Back Office.
Some extensibility, such as adding custom tags, is possible without writing your own code, with configuration and templating only.
Tutorial
Take a look at the Extending Admin UI tutorial to learn how to go through some basic steps in extending the Back Office.
You can extend the Back Office by adding and extending:
- Menus, such as the top bar or edit menu,
- Dashboard, for example by modifying block order,
- Tabs, for example by adding new tabs in content preview,
- Workflow, by adding custom events to the workflow timeline,
- User settings, by adding a new setting to the menu,
- Online Editor, for example by adding custom tags or styles,
- Page, by adding new blocks,
- Forms, by adding new types of Form fields.
React modules enable you to extend:
- Universal Discovery Widget used for content browsing,
- Sub-items list presented in content preview,
- Multi-file upload for quick uploading of media files.
Additionally you can:
- Add custom Content Type icons,
- Inject custom components into the Back Office,
- Format date and time.
String translations
Refer to Custom string translations to learn how to provide string translations when extending the Back Office.
Tip
You can also see:
Adding new Field Types¶
You can extend eZ Platform by adding new Field Types.
To learn how to add a new Field Type, refer to the Creating a Tweet Field Type tutorial.