eZ Documentation Center

This is outdated documentation made for eZ Publish Platform 5.2. It is being moved into the eZ Publish 5.x documentation, so please go there for most up-to-date documentation.

Skip to end of metadata
Go to start of metadata

Defining your FieldType template

In order to be used by ez_render_field() Twig helper, you need to define a template containing a block dedicated to the Field display.

This block consists on a piece of template receiving specific variables you can use to make the display vary.

You will find examples with built-in FieldTypes in EzPublishCoreBundle/Resources/views/content_fields.html.twig

Template for a FieldType with "myfieldtype" identifier

By convention, your block must be named <fieldTypeIdentifier>_field.

Exposed variables

fieldeZ\Publish\API\Repository\Values\Content\FieldThe field to display
contentInfoeZ\Publish\API\Repository\Values\Content\ContentInfoThe ContentInfo to which the field belongs to
versionInfoeZ\Publish\API\Repository\Values\Content\VersionInfoThe VersionInfo to which the field belongs to
fieldSettingsmixedSettings of the field (depends on the FieldType)
parametershashOptions passed to ez_render_field() under the parameters key
attrhashThe attributes to add the generate the HTML markup.
Contains at least a class entry, containing <fieldtypeidentifier>-field

Reusing blocks

To ease FieldType template development, you can take advantage of all defined blocks by using the block() function.

You can for example take advantage of simple_block_field, simple_inline_field or field_attributes blocks provided in content_fields.html.twig.


To be able to reuse built-in blocks, your template must inherit from EzPublishCoreBundle::content_fields.html.twig.

Registering your template


To make your template available, you must register it to the system.


You can define these rules in a dedicated file instead of ezpublish/config/ezpublish.yml. Read the cookbook recipe to learn more about it.

  • No labels