SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

29

description

Whenever you are asked to setup an intranet environment, one of the first questions that has to be tackled will be whether you will use multiple site collections to store your content. Ending up with different site collections will impact the way you can navigate and thus might require you to build custom navigation elements. Extending the top or left navigation can be done with a custom navigation provider (or providing XML or a custom NavigationProvider). Extending the breadcrumbs is a bit harder since there is no logic for you to do so. However, using the Managed Metadata as a placeholder to hold the structure, we can use JavaScript and the web services for Managed Metadata and Search to generate a custom breadcrumb and insert them before the default SharePoint version, thus generating a custom structure that works across site collections. Challenges are providing something that can compete with the out-of-the-box breadcrumb regarding performance, and the migration to SharePoint 2013 since that will provide Managed Metadata

Transcript of SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Page 1: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment
Page 2: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Navigation in a Multi Site Collection EnvironmentAlbert-Jan Schot

Page 3: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Albert-Jan Schot

work: Maventionblog: http://www.sharepointappie.nlmail: [email protected]: @appieschot

Page 4: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment
Page 5: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Agenda

Why? What? How?

Page 6: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Why

would you use Site Collections?

Page 7: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Why

Page 8: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Why

Scalability Settings

Page 9: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Scalability ‘Less’ limits Can be moved between databases Can be monitored (quota’s)

Page 10: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Limits and boundaries 300 Content Databases per WebApplication 2,000 Site Collections per Content Database

200 GB a Site Collection 250,000 sub sites 5000 (max 50.000) unique permissions per scope (SPList, SPWeb, SPSite)

Page 11: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Settings Shared permissions Shared template galleries Content Types Navigation

Page 12: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

What

types of navigation are there?

Page 13: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Click to insert photo.

Top navigation

Left navigation

View selector

Breadcrumb

What

Page 14: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Top navigation<SharePoint:AspMenu ID="TopNavigationMenuV4" 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" />

Page 15: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Left navigation<asp:ContentPlaceHolder id="PlaceHolderLeftNavBarDataSource" runat="server" /><asp:ContentPlaceHolder id="PlaceHolderCalendarNavigator" runat="server" /><asp:ContentPlaceHolder id="PlaceHolderLeftNavBarTop" runat="server"/><asp:ContentPlaceHolder id="PlaceHolderLeftNavBar" runat="server” /><asp:ContentPlaceHolder id="PlaceHolderQuickLaunchTop" runat="server“ /><Sharepoint:SPNavigationManager

id="QuickLaunchNavigationManager"runat="server"QuickLaunchControlId="QuickLaunchMenu"ContainedControl="QuickLaunch"EnableViewState="false"CssClass="ms-quicklaunch-navmgr">

Page 16: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

View selector<h1 name="onetidProjectPropertyTitle">

<asp:ContentPlaceHolder id="PlaceHolderSiteName" runat="server"><SharePoint:SPLinkButton runat="server" NavigateUrl="~site/" id="onetidProjectPropertyTitle"><SharePoint:ProjectProperty Property="Title" runat="server" /></SharePoint:SPLinkButton></asp:ContentPlaceHolder>

</h1><span id="onetidPageTitleSeparator" class="s4-nothome s4-bcsep s4-titlesep"><SharePoint:ClusteredDirectionalSeparatorArrow runat="server" /> </span><h2>

<asp:ContentPlaceHolder id="PlaceHolderPageTitleInTitleArea" runat="server" /></h2>

Page 17: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Breadcrumb<SharePoint:PopoutMenu

runat="server"ID="GlobalBreadCrumbNavPopout"IconUrl="/_layouts/images/fgimg.png"IconAlt="<%$Resources:wss,master_breadcrumbIconAlt%>"IconOffsetX=0IconOffsetY=112IconWidth=16IconHeight=16AnchorCss="s4-breadcrumb-anchor"AnchorOpenCss="s4-breadcrumb-anchor-open"MenuCss="s4-breadcrumb-menu">

Page 18: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

How

can managed metadata help you?

Page 19: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

“Navigation should be easy, very easy”

Page 20: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

How Clients & Projects Document Management Employees work on different clients (and projects)

Page 21: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Collaboration Portal1 site collection / client

1 subsite / project

Webtemplates for both

Only custom code for breadcrumb

Page 22: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

How Termset with region / location Location to store info in Template for Clients / projects Custom code for breadcrumb Custom code for ‘overviews’

Page 23: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Demo

Page 24: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Recap ContentType and Pagelayout with term Webtemplate to define navigation settings Custom code to render ‘our’ breadcrumb

Page 25: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Future Term itself does not map to a node No ‘friendly’ urls Will require migration

Still only a basic breadcrumb in 2013

Page 26: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Q&A

Page 27: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment

Code example

SPConnections13.zip

Page 28: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment
Page 29: SharePoint Connections 2013 - Navigation in a Multi Site Collection environment