Monday, March 1, 2010

Organizing Your Wiki Content - Part 2: Page Hierarchies

In Part 1 of Organizing Your Wiki Content, we discussed how you can use direct linking to organize your wiki content in a natural way. However, one of the major issues with direct linking is it's static, forcing you to incur overhead to keep the content current. Instead, we'd prefer to organize our content in a dynamic way. Page Hierarchies provide a simple way to do this.

This is the continuation of a series of posts on Organizing Your Wiki Content:
  • Part 1: Direct Linking
  • Part 2: Page Hierarchies
  • Part 3: Labels
  • Part 4: Fine-Grained Controls
  • Part 5: Including Content
  • Part 6: Wrap-up

Page Hierarchies

In Confluence, Pages are separated into page hierarchies as part of a Space. Each page can have many children. This lets you have a natural way to organize your content. Children of the parent page can provide more detail about a specific topic or be organized into a step-by-step process. For example, in the Confluence Documentation, the top page is broken down into User's Guide, an Administrator's Guide, and so on, all accessible from the home page.

Most Confluence themes, including the default theme, leverage page hierarchies in some way by using two Confluence macros, {children} and {pagetree}. The default theme displays the children of a page at the bottom of the content area. The documentation theme displays a pagetree in a panel to the left for the whole space.

(Default Theme - With Children at the Bottom of the Page)

(Documentation Theme - With PageTree on the Left Side)

You're not limited to using these themes to supply this functionality. You can also use these macros directly in your page content.


The advantage of organizing your content into page hierarchies is that it's fairly natural. When adding a page to the current page, your new page will automatically be a child of that page. This is one of the easier ways for your users to add content as it requires no advanced knowledge of Confluence. Furthermore, you can use the {children} and {pagetree} macros yourself to organize the content in the page. For example, organizing meetings notes or crafting a step-by-step guide.

Finally, one of the biggest advantages of using page hierarchies is that when new child or descendant pages are added, your content is dynamically updated. New child content can be easily discovered from the parent pages.


There aren't too many cons of using page hierarchies. However, page hierarchies can be a bit limiting. First of all, you can't use page hierarchies to link to pages in other spaces. Also, all children of a parent page will be listed when you use the {children} macro, so this can create some unintended consequences if you wanted to list the steps of a process and have a sibling page that isn't part of that process. Finally, you can only order child pages are a few ways: alphabetically, by creation date, or modified date. This makes things difficult if you have an explicit ordering you'd like to use, in which case, direct linking might be your best bet.

What about more loosely coupled content that doesn't fall into a strict single hierarchy? The next article in the Organizing Your Wiki Content series, Part 3: Labels, will demonstrate how labels can help you.

Do you prefer to use page hierarchies as your general method of organizing wiki content? Share your experiences in the comments.

No comments:

Post a Comment