How to edit the Confluence dashboard.


For such an important page, Confluence's dashboard (home page) sure is hard to alter. Say we want to display some wiki-rendered content on the left-hand side. In my case, I want to display the Atlassian Product Releases Macro on the dashboard:

The steps are as follows:

Step 1: Create the to-be-included Confluence page

Find a space that all users can view, and create a top-level page called _dashboard. Insert any content you want rendered:

(I've included a self-link to _dashboard, as I so often forget where this content comes from)

Step 2: Edit the Confluence home page

Now for the tricky part, to display this particular page on our Confluence dashboard.

  1. Go to Administration -> Look and Feel -> Layouts (or type 'gg layouts' for a shortcut)
  2. On the Global Layout line, click 'Create custom'
  3. Search for the div containing the welcome message:

  4. Below the div, insert the Velocity markup:

    ## Dashboard customization
    $helper.renderConfluenceMacro("{include:TECH:_dashboard|nopanel=true}")

    where TECH is the name of the space your content resides in.

    Use surrounding whitespace and indentation to make it visually distinguishable:

And we're done.

Keep in mind that Atlassian could update the default dashboard decorator between versions, and if you have customized it, as above, your Confluence may not render correctly. One would hope that Atlassian would mention such a backwards-incompatible changes in the release notes.


 Addendum

If you have customized your global layout in the past, and then upgraded Confluence (I'm on 7.1.2) you may find the right panel just displays:

Error formatting macro: recently-updated-dashboard: java.lang.NullPointerException

I find that just resetting and re-creating the custom Global Layout fixes this:

  1. As before, go to Administration -> Look and Feel -> Layouts (or type 'gg layouts' for a shortcut)
  2. On the Global Layout line, click 'Edit'
  3. Copy the custom content into your local clipboard
  4. 'Cancel' to return to the Edit Site Layouts page
  5. On the Global Layout line, click Reset Default
  6. On the Global Layout line, click Create custom
  7. Paste your saved custom content.
  8. 'Save'