How to structure a KB with some shared content across products?
Asked by Ashley Arciero:

I am new to Confluence and trying to determine if we can use it as a structured document repository for process and problem resolution documents. The documents apply to a range of products across which some components and corresponding documentation are shared. In an ideal world, I'd like to be able to create a template where the author/page owner selects the product(s) to which the page applies and the page then automatically displays in the tree for the appropriate product(s). However, there doesn't seem to be a way to let users select multiple variables from a list or choose a subset from a list of predefined labels as part of a template.

So far, Scroll Versions seems like the closest solution if we build out the product with the most shared content first, but doesn't appear to be a perfect solution. I'm curious if anyone has suggestions for other solutions to consider?

I'm also concerned about the tree getting too many levels deep to navigate. In my head, it looks something like this:

Team Space

- Product 1

-- Installation

--- Component 1

--- Component 2

-- Troubleshooting

--- Component 1

--- Component 2

etc. with several products and a long list of components (some duplicated) for each product.

Are there best practices for keeping the navigation from becoming overwhelming for users?


Answers:
author: Matt Reiner [K15t]
body: Hey [@Ashley Arciero](/t5/user/viewprofilepage/user-id/3591603)

I'm with the Scroll Versions team, and I think the [conditional content](https://www.k15t.com/rock-the-docs/conditional-content/define-conditional-content-with-scroll-versions) functionality would be a good fit here, but as you mentioned, I think there are things you can do without the app.

Perhaps you could create [page template for a component](https://www.k15t.com/rock-the-docs/creating-topics/define-topic-types-with-templates) that includes instructional text telling authors to add a label(s) for the product(s) which include the product. Also, include a list of all the label options so authors can copy and paste.

Then, create a page tree like:

* Product 1
* Product 2
* Product 3

Then, on each product page, you could add the Content by Label macro which includes all pages with the product label.

This solution will take some manual work from your authors, and won't put the content in the page tree, but could accomplish what you're looking for.

Alternatively, you also use a [variation of this approach](https://www.k15t.com/rock-the-docs/conditional-content/hide-content-on-each-page), with content specific to each product hidden on page, but I'm not sure that it would be really bulky.

Another good place to ask is the #confluence channel on the [Write the Docs Slack](https://www.writethedocs.org/slack/). Some bright minds in there.

Hmmm, still pondering this one. Let me know if you want to talk this through, I'm here to help.

comments: author: Ashley Arciero
body: [@Matt Reiner \[K15t\]](/t5/user/viewprofilepage/user-id/2246048) Thanks so much for the detailed reply! I think you're right that having a list of labels in instructional text for authors to choose from and relying on them to type them (or copy/paste) from the list may be the simplest/quickest solution for getting the right labels on there.


Tags: confluence-server

server