Project Summary

Global Top Navigation Menu allows to have a centralized navigation for your SharePoint web application. You can have one Top Menu for all site collection.

Description

This solution has the following features:
  • Settings option: you can maintain the options in the Global Top Menu and Footer (GTMF) by using a GUI. This GUI was developed using JQuery UI. In this GUI you will be enable to
    1. Select any site to be added in the GTMF or/and Footer,
    2. Set order of the items in the GTMF
    3. Add/Edit/Delete groups and subgroups.
    4. See information of the selected site.
    5. See Security Information of the selected site.
    6. Add external links.
  • Breadcrumb: Breadcrumb will be below GTMF. This was developed using xBreadcrumbs. xBreadcrumbs (Extended Breadcrumbs) is a jQuery plug-in to create categorized breadcrumbs.
  • Footer:

Installation steps

  1. Download wsp file.
  2. Install SharePoint Solution.
  3. Create a Document Library in the Root Site Collection (eg. http://hostname). The Document Library name must be SPGlobalTopMenu. The solution will be used this Document library to save configuration of the GTMF included images and options' information.
  4. Add GTMF in the Master Page.
    1. Go to the top of the Master Page and register the user controls
This user control is for the Top Menu
 <%@ Register TagPrefix="GTM" 
              TagName="GlobalNavigation" 
              src="~/_controltemplates/SP.GlobalTopMenu/ucGlobalNav.ascx" %>
 

This user control is for the Footer
 <%@ Register TagPrefix="GTF" 
              TagName="GlobalFooter" 
              src="~/_controltemplates/SP.GlobalTopMenu/ucGlobalFooter.ascx" %>
 

  1. Find PlaceHolderHorizontalNav and do the following
    1. Add <GTM:GlobalNavigation ID="GlobalNavigation1" AddUrl="true" runat="server"/> after <asp:ContentPlaceHolder id="PlaceHolderHorizontalNav" runat="server">
  2. Find TopNavigationMenuV4 and set Visible="false"
  3. Find TopNavigationDataSource and set Visible=false
  4. Add <GTF:GlobalFooter ID="GlobalFooter1" runat="server"/> before <SharePoint:DeveloperDashboard runat="server"/>

After changes your code should looks like the follow:
 <asp:ContentPlaceHolder id="PlaceHolderHorizontalNav" runat="server">
	<GTM:GlobalNavigation ID="GlobalNavigation1" AddUrl="true" runat="server"/>
	<SharePoint:AspMenu
	  ID="TopNavigationMenuV4" Visible="false"
	  Runat="server"
	  EnableViewState="false"
	  DataSourceID="topSiteMap"
	  AccessKey="<%$Resources:wss,navigation_accesskey%>"
	  UseSimpleRendering="true"
	  UseSeparateCss="false"
	  Orientation="Horizontal"
	  StaticDisplayLevels="2"
	  MaximumDynamicDisplayLevels="1"
	  SkipLinkText=""
	  CssClass="s4-tn"/>
	<SharePoint:DelegateControl runat="server" ControlId="TopNavigationDataSource" 
		Id="topNavigationDelegate" Visible="false">
		<Template_Controls>
			<asp:SiteMapDataSource
			  ShowStartingNode="False"
			  SiteMapProvider="SPNavigationProvider"
			  id="topSiteMap"
			  runat="server"
			  StartingNodeUrl="sid:1002"/>
		</Template_Controls>
	</SharePoint:DelegateControl>
</asp:ContentPlaceHolder>

Last edited Jun 3, 2013 at 8:11 PM by hmendezm, version 19