Event Listener module
Job module
Language module
Macro Module
Servlet Filter module
Servlet module
Theme module
Web UI modules
Workflow module

Decorator module

Available:

Confluence 2.5 and later

Decorator plugin modules allow you to add decorators without using a Theme Module.

Decorator Plugin Module

The following is an example atlassian-plugin.xml file containing a single decorator:

1
2
<atlassian-plugin key="com.atlassian.confluence.extra.sample" name="Sample Plugin">
...
    <decorator name="myDecorator" page="myDecorator.vmd" key="myDecorator">
        <description>My sample decorator.</description>
        <pattern>/plugins/sampleplugin/*</pattern>
    </decorator>
...
</atlassian-plugin>
  • the page attribute of decorator defines the name of the decorator resource file
  • the pattern element defines the url pattern for which the decorator will be applied to (you can only have one pattern per decorator)

Decorator resource file

Decorator files are written in the Velocity templating language and have the VMD extension. The following is a sample decorator file:

1
2
<html>
<head>
    <title>$title</title>

    #parse ("/decorators/includes/header.vm")
</head>

<div id="PageContent">
    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%">
    <tr>
        <td valign="top" class="pagebody">
            <div class="pageheader">
                 <span class="pagetitle">$title</span>
            </div>
            $body
         </td>
    </tr>
    </table>
</div>

</body>
</html>

You can familiarise yourself with Velocity at the Velocity Template Overview and decorators in general at the Sitemesh homepage.

Rate this page: