Configure Managed Navigation in SharePoint 2013 – Step by Step
Managed navigation is a new feature in SharePoint 2013 that enables us to create SharePoint site collection’s navigation from managed metadata. Managed navigation is consistent within the site collection, So that when you need to update the hierarchy, you update it once for the entire site collection and every site automatically updates its navigation.
Managed Navigation in SharePoint also provides Friendly URLs
We can show content from any complex URLs, different locations. But the end-users even won’t actually know where the actual content is stored. URLs will be rewritten to a friendly format and presented to end-users. E.g. while the actual page lives under https://sharepoint.crescent.com/aboutus/Sitepages/Home.aspx, in Friendly URLs the address bar can set to: https://sharepoint.crescent.com/about-us/overview
So, Friendly URLs give the flexibility of how you want your site organized and optimizes your URLs for SEO without changing the structure of your site.
How to Enable Managed Navigation in SharePoint 2016?
Let’s configure managed metadata navigation in SharePoint 2013 or 2016 in just two steps:
- Create the navigation structure in either Global (from Central Admin) or Local term store (from site collection)
- Edit the site collection’s Navigation settings to use the navigation created in term store.
Step 1: Create Managed Navigation Structure in SharePoint 2013:
We need to define the Managed Metadata term set that will be used for navigation. So, let’s start creating a new Term Group called “Global Top Navigation” from Central Administration. You can also create it as “Local Term Store” from Site Settings >> Term store management under Site administration.
- Go to Central Administration
- Application Management >> Service Applications >> Click the link for Managed Metadata Service. (I’m assuming you have already created the Managed Metadata service application! If not, please create one)
- We get Term store Management Tool now. You can create Terms to for your desired navigation. Here is mine:
- I’ve created a term group “Global Top Navigation” and a Term set “Top Navigation” and few terms.
- Click on the term set “Top Navigation”, In the right panel, click the tab for intended use, check the checkbox “Use this Term Set for Site Navigation” to enable the term set for navigation. Click the save button to save the changes.
- For each Term, you just created (Home, About Us, Overview, etc.), use the “Navigation” tab to specify target links for each menu item.
- Add the URL to each term as “Simple Link or Header”, else in many scenarios, it will not appear in the menu.
- For Friendly URLs:
Managed navigation provides friendly URLs, meaning the actual URL E.g. https://sharepoint.crescent.com/lists/projects/activeprojects.aspx will be hidden from end-user, but they see only: https://sharepoint.crescent.com/activeprojects. You can configure the friendly URL assigned to a term and the target page URL in managed navigation. Here is how:Set the Navigation tab option to “Term-Driven Page with Friendly URL” and Go to the term driven pages tab. This page shows the settings for friendly URLs for the term set.
- And set the Friendly URL for the navigation item.
Configure Site Navigation to use Managed Metadata:
- Go to the root web of the site collection >> Site Settings >> Click on the “Navigation” link under Look and Feel (You need to have Publishing Feature activated first to get the “Navigation” link!)
- In the Global and Current Navigation settings, You can choose the “Managed Navigation” menu
- Choosing it enables you to reuse an existing term set or create a new one to represent your site; Under the Managed Navigation Term Set, Specify the Term set we created earlier.
That’s all! Here is the output:
That’s all! We are done setting up managed navigation in SharePoint 2013.
Consistent top navigation across multiple site collections:
Unfortunately, Only one site collection can use a particular term set for Managed Navigation! Managed Navigation is limited to the current Site Collection and cannot be used across multiple Site Collections.
So, Its not possible to share the Navigation Term sets on different site collections to establish a global navigation across site collections. If you try to use the same set on multiple site collections, you will get the following message:
If you continue and browse back to the site that used the original term set, you will receive an in-line error stating:
Error loading navigation: The Managed Navigation term set is improperly attached to the site. (Correlation ID: c0c8579c-d8aa-d07a-0000-015700cba279)
Managed navigation across Site Collections: Solutions
- Use a delegate control to replace the standard Global navigation.
- Create Copies of Navigation Term set: You can PIN the term set to another one, So that the changes will be replicated, and you can specify different term sets with same nodes on each site collections. This works when you have very few site collections.
- Another alternate would be: copying terms to each site collection from Global term store (No worries, PowerShell can help here, I’ll post one soon)
Security Trimming & audience targeting in SharePoint 2013 managed navigation:
Another limitation to note: Managed Navigation neither provides Security Trimming nor audience targeting! I used to create a custom navigation provider to establish consistent top navigation for all site collections in SharePoint 2010/2007 versions.
Managed Navigation order: From the “Custom Sort” tab, You can sort Metadata terms.
Overview of managed navigation in SharePoint Server 2013: https://technet.microsoft.com/en-us/library/dn194311.aspx
Is there a way to force the metadata navigation links to open in a new window?
A very good article .. I started with the error and came to this page… but i did provide me with the work around to the error and a better way to handle navigation going ahead…
I have a PowerShell Script that creates a 3 level SharePoint 2013 Navigational Menu of Links from a CSV file of names and links. I’m trying to get logic to open selected menu items in a separate window. This would likely take using and storing a custom field. Also I would need some jquery or javascript to interact when rendering.
Have you though about how to open a link in a new window from the Navigational Menu?
I have the same problem, could you find the solution?