Friday, November 14, 2014

SharePoint 2013: How to create a global managed navigation structure using the Managed Metadata service application

Introduction

This posting walks you through the process of creating a managed global top navigation structure for your farm.  You will be using the Managed Metadata service application to construct a term set that will be used for site navigation, in which each term is associated with a specific URL.  The term set will be constructed at the farm level, in Central Administration, and will thus be available to any site collection in the farm through linked cloning.

Note that this procedure presented here is effective for farms containing several site collections, but would be impractical for farms containing many site collections.

Procedure
  1. Create new term store group
    1. Launch Central Administration as a farm administrator
    2. Go: CA > Application Management > Manage service applications > Managed Metadata Service
    3. In the left Term Store panel, hover your cursor over Managed Metadata Service, and then click the drop-down.  One menu option will be listed: New Group.
    4. Click this option.  A new orange bar will appear just below the System group.
    5. Enter a name for this new term store group.  For example, Global Top Navigation.
    6. Once you have entered the name, click anywhere on the white space in the General panel.  The General panel updates to display fields for customizing this group.
    7. Enter a description for the new term store group.  For example, Farm top navigation.
    8. Enter the AD accounts of those persons who you want to manage this group and those who will be able to contribute to it.
    9. Click Save.  This completes the steps for creating the new term store group.
    10. If you want to start over, just right click on this group name, and then choose, Delete Group.
  2. Create new term set
    1. Hover your cursor over the new term store group, and then click the dropdown arrow.  Three options will be displayed:
      1. New Term Set,
      2. Import Term Set and
      3. Delete Group
    2. Click New Term Set.  An orange bar will appear just below the new term store group.
    3. Enter a name for the new term set.  For example, Top Navigation Farm.
    4. Click on the white space in the General tab.  The General tab will update to display fields for customizing the new term set.  You'll also see three additional tabs:
      1. Intended User
      2. Custom Sort and
      3. Custom Properties
    5. On the General tab, enter the information as appropriate.
    6. Click Save.
    7. Select the Intended tab.
    8. Uncheck Available for Tagging.
    9. Check Use this Term Set for Site Navigation.
    10. Click Save.  This completes the steps for creating a term set.
      A Term Set, when used for navigation, corresponds to an entire menu set - in other words, all of the various menus that would appear in the page's global navigation bar.  Reserve this first term set as the baseline and source.  Create additional term sets that link to this source and that are individually used for each site collection.  One term set can be used for one site collection.  But one term set can be used as the source for however many other term sets.
  3. Create new top menu terms
    1. Hover your cursor over the new term set, and then click the dropdown arrow.  Several options will be displayed:
      1. Create Term
      2. Copy Term Set
      3. Reuse Terms
      4. Pin Term with Children
      5. Move Term Set
      6. Delete Term Set
    2. Click Create Term.  An orange bar will appear just below the new term set.
    3. Enter a name for the new term.  For example, Home.
    4. Click on the white space in the General tab. The General tab will update to display fields for customizing the new term.  Three other tabs will also appear:
      1. Navigation
      2. Term-Driven Pages
      3. Custom Properties
    5. Select the Navigation tab.
    6. In the Visibility in Menus section, check both options.
    7. In the Navigation Node Type section, select Simple Link or Header, and then enter the URL for the menu option.
    8. Click Save.
    9. Repeat this process for each of the top menus that you want to appear in the global navigation bar. At the end of this, you will have a list of top menu terms appearing below Top Navigation Farm.  For example, this is what you might see, when you look in the Taxonomy Term Store panel:
      1. Global Top Navigation
        1. Top Navigation Farm
          1. Home
          2. Products
          3. Resources
          4. Support
          5. About
    10. After you have created all the top menu terms, select the new term set.  The right panel updates to display the usual tabs.
    11. Select the Custom Sort tab.
    12. In the Custom Sort Order section, select the Use custom sort order option.  A list will appear corresponding to the top menu terms that you created.
    13. Using the appropriate sort order dropdowns, set the order of these as desired.  This is the way they will appear in the global navigation bar.
    14. Click Save.
  4. Create menu option terms
    1. Hover your cursor over a new term, and then click the dropdown arrow. Several options will be displayed:
      1. Create Term
      2. Copy Term
      3. Copy Term with Children
      4. Reuse Terms
      5. Pin Term with Children
      6. Merge Terms
      7. Deprecate Term
      8. Move Term
      9. Delete Term
    2. Click Create Term.
    3. An orange bar will appear just below the new term.  Enter a name for the new term. For example, if you created it under Products, it might be ProductA.
    4. Click on the white space in the General tab. The General tab will update to display fields for customizing the new term. Three other tabs will also appear, just like previously.  Indeed, from here on out, as you create new terms and subterms, etc, the tabs that you see will remain the same.
    5. Select the Navigation tab.
    6. In the Visibility in Menus section, check both options.
    7. In the Navigation Node Type section, select Simple Link or Header, and then enter the URL for the menu option.
    8. Click Save.
    9. Repeat this process for each of the terms that you want to see appear when the user clicks on the top menu term.  For example, if you created several menu option terms under the Products top menu term, you might see this:
      1. Global Top Navigation
        1. Top Navigation Farm
          1. Home
          2. Products
            1. ProductA
            2. ProductB
            3. ProductC
          3. Resources
          4. Support
          5. About
    10. After you have created all the menu option terms, select the parent top menu term. The right panel updates to display the usual tabs.
    11. Select the Custom Sort tab.
    12. In the Custom Sort Order section, select the Use custom sort order option. A list will appear corresponding to the menu option terms that you created. 
      NOTE: by default, these items will be sorted alphabetically ascending.
    13. Using the appropriate sort order dropdowns, set the order of these as desired. This is the way they will appear in the global navigation bar, after the user clicks on the top menu item.
    14. Click Save.
    15. Repeat this process for each of the other top menu terms.  At the end of all this, you might have something like the following:
      1. Global Top Navigation
        1. Top Navigation Farm
          1. Home
          2. Products
            1. ProductA
            2. ProductB
            3. ProductC
          3. Resources
            1. ResourcesA
            2. ResourcesB
          4. Support
          5. About
            1. Help
            2. Contact
            3. Comment
    16. This completes creating the Top Navigation Farm term set.  This term set will not actually be linked to the global navigation of any one site collection.  Rather, it will be the template that other term sets will link to.  In the next step, you will create a new term set, and this term set will be one that you can use for the managed navigation of a single site collection.  This term set implements the term set template you created previously using something called "pinning", which is binding a term to another term so that the first takes the value of the second.  You can't pin term groups or term sets.  But you can pin terms.  Thus, to create a clone term set from the template, you effectively have to create a new term set and terms, but then pin each of these terms to their corresponding term in the template.
  5. Create first site collection Top Navigation term set
    1. Hover your cursor over the template term store group, and then click the dropdown arrow.
    2. Click New Term Set. An orange bar will appear just below the new term store group.
    3. Enter a name for the new term set.  Let's call it, Top Navigation Site Collection A.
    4. Click on the white space in the General tab. The General tab will update to display fields for customizing the new term set.
    5. On the General tab, enter the information as appropriate.
    6. Click Save.
    7. Select the Intended tab.
    8. Uncheck Available for Tagging.
    9. Check Use this Term Set for Site Navigation.
    10. Click Save.  Now lets add terms to it. This will proceed a bit differently, as now we want to only "pin" existing terms to it, not create new ones.
    11. Hover your cursor over Top Navigation Site Collection A, and then click the dropdown arrow.
    12. Select Pin Term with Children.  A popup dialog appears listing the current contents of the Taxonomy Term Store.
    13. Expand the Global Top Navigation group.  You will see Top Navigation Farm and Top Navigation Site Collection A.
    14. Expand Top Navigation Farm.  You will see the terms you created previously.
    15. Select the Home term, and then click OK.  The popup closes, and now, in the Term Store, you will see it updated to display something like this:
      1. Global Top Navigation
        1. Top Navigation Farm
        2. Top Navigation Site Collection A
          1. Home
    16. Repeat this process for each of the other terms.  At the end of this, you will see something like the following:
      1. Global Top Navigation
        1. Top Navigation Farm
        2. Top Navigation Site Collection A
          1. Home
          2. Products
          3. Resources
          4. Support
          5. About
    17. Note that each of these pinned terms also has presents the children you configured for that term previously.  In fact, any data change that you now make to the template term set will be reflected in this new term set.  For example, if you changed the URL for the Home term in Top Navigation Farm, that change will instantly be reflected in the Home term for Top Navigation Site Collection A.  And so on.  Top Navigation Site Collection A is effectively a linked clone of Top Navigation Farm. Next, let's configure the term sort order.
    18. Select Top Navigation Site Collection A.
    19. Select the Custom Sort tab.
    20. Configure the term order as desired, and then click Save.
    21. Repeat this process, creating a new site collection term set for each of the site collections in your farm.  At the end of all this, you might have something similar to this:
      1. Global Top Navigation
        1. Top Navigation Farm
        2. Top Navigation Site Collection A
        3. Top Navigation Site Collection B
        4. Top Navigation Site Collection C
    22. Each of these site collection terms sets is now ready to be associated with a single site collection.
    23. Exit the Managed Metadata Service Application.
  6. Configure a site collection to use a Top Navigation term set
    1. Connect to a farm site collection, let's call it, Site Collection A, using an account provisioned as a site collection administrator.
    2. Click the gear icon, and then click Site settings.
    3. On the site collection settings page, in the Look and Feel section, click Navigation.
    4. On the Navigation settings page, in the Global Navigation section, select Managed Navigation.
    5. In the Managed Navigation: Term Set section, select the Site Collection A term set.
    6. Scroll to the top or bottom of the page, and then click OK.  The change to global navigation will be instantaneous.
    7. Repeat this process for each of the other site collections, assigning it its appropriate term set having a similar name.  At the end of all this, you will have configured consistent global navigation for all your site collections using term sets cloned and now managed from a single template term set.
References
Notes
  • Error loading navigation: The Managed Navigation term set is improperly attached to the site: Ocassionally, while editing the Managed Navigation structure, you may see this error appear where the global navigation bar should be when refreshing the user pages after a term set change.  To resolve this, try switching the site navigation back and forth between managed and structured navigation, a couple of times.  My experience has been that about 2-3 tries usually resolves this problem. 
  • How to tell in Term Store, when a navigation term set is in use: its font will be slightly larger and the font color will be gray.
  • Many thanks to Mythili Ranganathan for her excellent posting on this topic that provided me with the critical initial introduction to implementing managed navigation in SharePoint 2013.  My posting builds upon her foundational writing.

No comments: