eZ Platform Rich Text Field Type Bundle
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github [github] Added pull_request_template.md file Apr 6, 2018
bin/.travis [Travis] Enabled AdminUI Behat tests (#11) Nov 16, 2018
src Add missing BC alias for external storage Jan 15, 2019
tests [XSLT][XHTML5Edit] Rendered space inside of span only for empty elements Dec 17, 2018
.gitignore Added php-cs-fixer configuration Feb 13, 2018
.php_cs [CS] Disabled phpdoc_types_order rule Jan 15, 2019
.travis.yml [Travis] Enabled AdminUI Behat tests (#11) Nov 16, 2018
LICENSE Added LICENSE empty .gitignore file Feb 13, 2018
README.md [Doc] Bumped supported version of eZ Platform to v2.4 Oct 12, 2018
phpunit-integration-legacy-solr.xml [Travis] Enabled Solr integration tests (#10) Nov 2, 2018
phpunit-integration-legacy.xml [Travis] Enabled Solr integration tests (#10) Nov 2, 2018
phpunit.xml [Unit tests] Enabled Bundle DI tests Nov 9, 2018


eZ Platform RichText Field Type Bundle

This Bundle provides RichText (ezrichtext) Field Type for eZ Platform 2.4 and higher. It is a Field Type for supporting rich formatted text stored in a structured XML format.

This package overrides services provided by the eZ\Publish\Core\FieldType\RichText namespace of ezsystems/ezpublish-kernel package.

This Field Type succeeds the former XMLText Field Type found in eZ Publish 5.x and before.


  1. In your eZ Platform 2.4+ project, require this package by the Composer.

        composer require ezsystems/ezplatform-richtext
  2. Enable the Bundle in AppKernel.php:

        public function registerBundles()
           $bundles = [
               // ...
               new EzSystems\EzPlatformRichTextBundle\EzPlatformRichTextBundle(),
           // ...
  3. Remember to clear the Symfony Cache (for SYMFONY_ENV your project uses).

        php bin/console cache:clear


When looking to find a structured text format for eZ Platform, we wanted to pick something that was widely used in the industry and which could support the custom & embed structures we have had in eZ Publish for years, which has enabled us to seamlessly target several channels / formats based on the same internal stored formats.

What we had at the time was inspired by early drafts of XHTML 2.0, a standard made for the most part obsolete by html5.

We also knew from experience we had to support html5 as an input/output format for RichText editors to reduce the number of customizations we had to apply on top of available editors. Which would make it hard to keep up to date, and forces us to deal with edge cases ourselves instead of relying on the editor doing it for us.

In RichText we have ended up with a solution that is built on a more widely used internal format, moved closer to html5 supported by editors, and better suited to support wider range of formats.


Storage format

Storage format in RichText is DocBook, for further info on its schema and how we extend it with RELAX NG, see Resources/schemas/docbook/.

Input/Output formats

This Field Type supports several output and input formats, DocBook, ezxml (legacy format), and two forms of HTML5 (edit and output).

Further reading on these formats and how they uses schemas, XSLT and DTD, see Resources/.


The architecture allows for migration to and from several formats in the future, currently the following is the main one supported:

From eZ Publish

For migrating from eZ Publish's XMLText format, have a look at the seperate XMLText Field Type.


Copyright (C) 1999-2018 eZ Systems AS. All rights reserved.


http://www.gnu.org/licenses/gpl-2.0.txt GNU General Public License v2