Wednesday, 6 January 2016

The Best OOTB Cross-Site Collection Navigation Solution for SharePoint Online

I will start by saying:  This solution sucks, but I've done my fair share of research/testing/swearing so you don't have to.  This is the best option you can currently achieve with OOTB (Out-of-the-box) functionality.

Problem:  Many large companies moving to SharePoint Online have the same problem.  They have enough data that it needs to be spread out across multiple site collections.  How the data should be split up is a different story .  The fact is, they would like to have consistent Global Navigation across all site collections.

Reasons why you would want the same global navigation across all site collections: 

  • Visibility of everything that exists within the SharePoint Online Tenant
  • Consistent navigation simplifies the User Experience, allowing them to be comfortable in any Site Collection without having to remember a new navigation
  • Everyone knows everything that is on SharePoint, not just the admins managing the tenant, which in turns reduces duplication of content
  • One less thing for Site Collection Admins to manage

Rebuttal:  Some argue that there is no need to have the same navigation across all site collections because Search & Content Search Web Parts can surface all the content across the tenant anyway.  Yes that is true, but I would argue that being presented with content, and knowing where content is located are two very different things.

Finding content quickly allows you to get what you need and get on with your day which is great for short-term productivity & efficiency.  However, knowing where content is located helps users keep content up to date, allows easier management of access to the content & makes sense to people when they ask 'so where is this actually sitting?'.

The Solution:  Utilise the SharePoint Term Store to manage your global navigation & set all your site collections to use Managed Navigation.

How it works:  You create one main navigation Term Set and set up all the terms (navigation options/dropdowns) you would like to have in your global navigation.  This Term set will be used by your Root Site Collection (http://portal.sharepoint.com).

You then create one additional term set for each site collection you manage.  Each of these term sets will use 'pinned terms with children', which replicate all the settings from the main navigation Term Set without you having to recreate them all manually.

This means if you ever need to edit things like, location of term in navigation, or name of term, then it will automatically roll out that change to all your pinned term sets.

Disadvantages to this solution:  here's where the sucky part comes in.

  • Initial setup takes a long time.  lets say you have 20 site collections and 20 items in your global navigation, this means you would need to create 20 terms, then pin each of those 20 terms to 20 site collections (400 terms all up).  That's a shitload of work (1 day for a pro like myself).
  • If you change a URL to a root term, it doesn't roll out that change to all of your term sets, you would need to manually update the URL in each of the term sets
  • If you need to add a new term, same URL rules apply I'm afraid.

Still on my side and want to implement this bad boy?  Move on to my next blog post for 'SharePoint Online - Setting up Cross-Site Collection Navigation Using Term Sets [work in progress]'

I'm always looking for better ways to manage SharePoint environments, so if you've got anything to add on global navigation, please comment below!

No comments:

Post a Comment