Upgrading Customized Site and Space Layouts

On this page

Still need help?

The Atlassian Community is here for you.

Ask the community

As Confluence evolves, so do the default site and space layouts that drive the rendering of every page. As new functionality is added or current functionally is changed, the default layouts are modified to support these changes.

If you are using custom layouts based on defaults from a previous Confluence version, you run the risk of breaking functionality, or worse, missing out on great new features!

Take care on each new release of Confluence to reapply your changes to the new default templates.

To reapply your custom layouts, you need to:

  1. Obtain the source of your custom layouts from your current version of Confluence.
  2. Reapply your customizations to the new default layouts.

Step 1. Obtain your Custom Layouts

Ideally, you should keep a record of each customization you have applied to each of your Confluence site or space layouts.

If not, you should be able to find your customizations using the following method. This method extracts all site- and space-level layouts from your Confluence site as a single output. From this output, you should be able to identify your customizations.

tip/resting Created with Sketch.

This method is handy to use if you have:

  • Many spaces with space layout customizations, or
  • Do not have an independent record of your site or space layout customizations.

Custom layouts are stored in the DECORATOR table within your Confluence database. You can SELECT for the source of the layout using SQL like this:

mysql> select SPACEKEY,DECORATORNAME,BODY from DECORATOR;
+----------+---------------------+------+
| SPACEKEY | DECORATORNAME       | BODY |
+----------+---------------------+------+
| NULL     | decorators/main.vmd | ...  |
+----------+---------------------+------+
1 row in set (0.03 sec)

This example was tested on MySQL, but should be applicable to all SQL databases.

Step 2. Reapply your Customizations

When you upgrade Confluence to another major release of Confluence, you will need to manually reapply any customizations you made to any site-wide or space-specific layouts. Unless otherwise stated, you should not need to reapply customizations after conducting a minor release upgrade of Confluence.

What are 'major' and 'minor' releases? Major release upgrades are ones where the 1st digit of Confluence's version number or the 1st digit after the 1st decimal place differ after the upgrade, for example, when upgrading from Confluence 3.0 to 3.1, or 2.8 to 3.0. Minor release upgrades are ones where the 1st digit of Confluence's version number and the 1st digit after the 1st decimal place remain the same after the upgrade, for example, when upgrading Confluence 3.0 to 3.0.1.

If you have made Confluence site-wide layout customizations:

  1. Choose the cog icon , then choose General Configuration
  2. Select Layouts in the left-hand navigation panel. The decorators are grouped under Site, Content and Export layouts.
  3. Ensure you have all your customizations available (preferably in a form which can be copied and pasted).
  4. Click Reset Default next to the layout whose customizations need to be reapplied.
  5. Click Create Custom next to the same layout and reapply your customizations (by copying and pasting them) into the appropriate locations within the new default layout.
  6. Click the Save button.
  7. Repeat this procedure from step 4 for each layout whose customizations need to be reapplied.

If you have made space-specific layout customizations:

  1. Go to the space and choose Space tools > Look and Feel from the bottom of the sidebar 
  2. Choose Layout. The decorators are grouped under Site, Content and Export layouts.
  3. Ensure you have all your customizations available (preferably in a form which can be copied and pasted).
  4. Click Reset Default next to the layout whose customizations need to be reapplied.
  5. Click Create Custom next to the same layout and reapply your customizations (by copying and pasting them) into the appropriate locations within the new default layout.
  6. Click the Save button.
  7. Repeat this procedure from step 5 for each layout whose customizations need to be reapplied.

Step 3. Test your Modifications Carefully

Changes may interact unpredictably with future versions of Confluence. When upgrading, you should always test your custom modifications thoroughly before deploying them on a live site. It's beyond the scope of Atlassian Support to test and deploy these changes.

Turning Off Caching

Velocity is configured to cache templates in memory. When you edit a page from within Confluence, it knows to reload that page from disk. If you are editing the pages on disk, you will either have to turn off Velocity's caching temporarily in WEB-INF/classes/velocity.properties, or restart the server to make your changes visible.

The velocity.properties file is available in the confluence-x.x.x.jar file, where x.x.x is the Confluence version number. The JAR file is located in the WEB-INF/lib directory. If you wish to make modification to the files in the JAR, we recommend the following steps:

  1. Stop Confluence.
  2. Make a backup copy of the JAR file.
  3. Un-jar the file
  4. Locate and edit the appropriate file that you wish to modify.
  5. Re-jar the confluence-x.x.x.jar file.
  6. Relocate the JAR file to the appropriate directory.
  7. Restart Confluence.
Last modified on Dec 14, 2020

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.