Organizing My Wiki

Hi everyone,

I still have some open issues with my Wiki instance which I’d like to tackle now.

When I set it up, I installed the default flavour and created all of my pages under the “Main” node.

However Mr. Florea suggested to me to better hide the default Main node and create an alternative new main / root node for the default / initial page hierarchy:

So far, I started to add some new, independent top-level nodes, but now I’d actually like to “retire” “Main” and move all subordinate pages to a new alternative node - preferrably breaking as few external links into the Wiki as possible (so if somehow doable, by breaking none…).

How do I do this best? Should I create an alternative “Main” node (let’s call it “Start”) and move all children and grand-children of “Main” to “Start” using the “create redirects” feature? This might create lots of redirections, tough, I assume…

Would this work and might it cause problems or performance issues because of all the redirections beneath “Main”?

Or would it be a better approach to just rename the current “Main” node (to “OldMain”) and create a new, alternative node called “Main”, to which I move all previous children and grandchildren from OldMain?

Would this work? Or would this create trouble during the next update because of “Main” node naming conflicts?

Thanks for you input,


Sounds like you could benefit from the Nested Pages Migrator Application.

Documentation about content organization can be found here (recommended reading before using the app).

Sorry, I should have mentioned that I’m at Xwiki 10.11.8 and started with 10.8 or 10.9, i.e. I’m already using hierarchical pages / nested spaces everywhere.

Nevertheless, the article you linked was an interesting read and helps to understand the ideas / implementation beneath Xwikis surface better!

My question basically is how to make my current sub-pages of the default Xwiki main node independent of future upgrades (the main node’s content, i.e. its WebHome-page as I understand it after reading the article about nested spaces) seems to be reset to factory default / replaced with default contents during every upgrade.

Children pages are unaffected / untouched, but I cannot reliably provide my own contents for the start page.

Thus I want to migrate everything to a new “Main” node the content of whose start page I can fully control, but with breaking as few URLs as possibly in the process.

I could probably also just add a new default node to the Wiki and keep all content beneath the old Main node, but that would probably be confusing, having this node with default content hanging around all the time and being the hierarchical parent of lots of meaningful stuff…

Don’t do that. The “Main” page has hidden child code pages that will be broken if you move/rename them.

Moving your own pages (those that you created) from the Main page is the best option. There shouldn’t be any performance issue if you rename with redirect. The only “issue” is that you will be able to see the redirects in the document tree if you configure your profile to see hidden pages, but your users should have this option on.