Caution: This documentation is for eZ Publish legacy, from version 3.x to 5.x.
For 5.x documentation covering Platform see eZ Documentation Center, for difference between legacy and Platform see 5.x Architecture overview.

Custom tags

In addition to the default tags described above, the "XML block" datatype makes it possible to use custom tags. A custom tag can be used both as a block or an inline element. Custom tags must be specified using the "AvailableCustomTags[]" array in the [CustomTagSettings] block within an override for the "content.ini" configuration file. When the XML is rendered, the contents of a custom tag will be replaced by a custom template. The name of the template must be specified using the "name" parameter. Example of usage:

<custom name="template_name" [custom_parameter="value" [...] ]>
The quick brown fox jumps over the lazy dog.
</custom>

The custom tag in the example above will be replaced by a template called "template_name.tpl". This template must be located in the following directory within the current design: "/templates/content/datatype/view/ezxmltags/" (or one of the fallback designs). It is also possible to create an override template. The contents of the tag will be available in the "$content" variable within the inserted template. The custom parameters are optional. When used, a custom parameter will be available as a template variable with the same name as it was specified in the tag itself.

Balazs Halasy (10/03/2005 11:49 am)

Balazs Halasy (28/04/2005 2:34 pm)


Comments

  • Custom Tags / Online Editor

    I have tried the example above and everything works great.

    But when I use the custom tags inside the Online Editor there only appear a button with a question mark. I would like to display the custom tag like it is done for the factbox tag.

    Here the code from my content.ini file:

    [CustomTagSettings]
    AvailableCustomTags[]=mytag
    IsInline[mytag]=true

    And here the code from mytag.tpl

    <div align="center">
    <table bgcolor="#eeeeee">
    <tr>
    <td>
    {$content}
    </td>
    </tr>
    </table>
    </div>

    Any ideas?
  • custom tags have to also exist in admin siteaccess

    It is also necessary to add any custom tags to the admin interface's content.ini.append.php - otherwise when you try to put the custom tag in an xml block ez rejects it as being unknown.