Have nested experience page show up in EM sitemap


I am currently experimenting with an experience page setup. Basically I have the following folder structure:

  • xpage folder
    • regular folder
      • nested xpage folder

And nested wilcard sitemap items:

  • _default_ relative content path refers to xpage folder
    • _default_ relative content path refers to nested xpage folder

The experience pages within the xpage folder can be viewed and edited in the Experience Manager. It is possible to create experience pages in the nested xpage folder and they can be viewed on the site, but they cannot be viewed or edited in the Experience Manager. I can imagine why this is the case. A document in xpage folder with url ‘xpage-1’ can be easily added to the sitemap. A document in nested xpage folder with url ‘nested-xpage-1’ is intended to be displayed at url ‘xpage-1/nested-xpage-1’, but the Experience Manager does not know the parent url of ‘nested-xpage-1’ is ‘xpage-1’. Hence the page cannot be previewed. In this case the concrete folder structure would be:

  • xpage folder
    • xpage-1 document
    • xpage-1-content folder
      • nested xpage folder
        • nested-xpage-1 document

Is there any way to make the nested experience page show up in the Experience Manager? Currently, there is no way to preview the page or add/remove components to/from containers.

Thanks in advance!

1 Like

You can’t do this out of the box, maybe it’s possible if you modify the code that renders the sitemap, but it won’t be trivial. I’m not sure it’s worth the effort.

I would keep it simple as intended - the xpage folder and subfolders are for pages not content, and they reflect the URL structure. Content documents should be outside of the xpage folder in some folder structure that makes sense to your use-case. Maybe have content/page1 etc. if you want to organise content by pages.

Thanks for your answer David, I understand what you mean and will discuss this with my team. Our editors organize content (which included documents that contain page metadata) by theme and we hadn’t really considered separating pages from content when we first added xpage support to some folders.

I believe you when you say modifying the sitemap rendering code is probably not going to be worthwhile, but just so we have the full picture, can you explain how this can be done or share a link?

I’m not aware of an extension point that lets you do this easily, so it would probably be something like forking the product code in your archetype and implementing your own solution. Maybe as a starting point you can look at the requests being made from the browser to fetch the sitemap.

Sorry for the late reply. We are probably not going for a custom solution like that. Thanks for your time!