Magnolia 5.7 reached extended end of life on May 31, 2022. Support for this branch is limited, see End-of-life policy. Please note that to cover the extra maintenance effort, this EEoL period is a paid extension in the life of the branch. Customers who opt for the extended maintenance will need a new license key to run future versions of Magnolia 5.7. If you have any questions or to subscribe to the extended maintenance, please get in touch with your local contact at Magnolia.
Templates are blueprints for creating pages, areas and components. When you add a page in the Pages app you must choose a template.
A template consists of:
A template script defines the output, typically HTML, and is interpreted by a Renderer. The script is written in a templating language such as FreeMarker or JSP.
Dialogs are used for content entry. A dialog defines the editable content properties of a template. Pages, area and component templates can all use dialogs.
The model is a JavaBean implementing RenderingModel . Use it to implement complex logic. The model can execute any Java code to retrieve data from the repository or from an external source. The results are available to the template script for rendering on the page.
Elements of the Magnolia template mechanism:
The diagram abbreviates the field class as
i.m.u.f.f.d.TextFieldDefinition to save space. This is not a valid value. Use fully-qualified field class names such as
info.magnolia.ui.form.field.TextFieldDefinition in your definitions.
The Magnolia CLI speeds up template creation for light developers. The tool provides commands that automatically create basic template definitions and scripts on the file system.