Hub Sites have finally arrived to SharePoint online!
The first question is why is this important? So let’s backup a little and take a high level view of SharePoint.
If you would like to setup an Intranet for your organization we normally start with a site collection. A site collection at a high level is a container for multiple sites or sub-sites which also will contain your lists and libraries of data.
Often we create multiple site collections in an Intranet environment. A post for another day is the break out of site collections vs sub-sites.
But lets start with a simple example. In most cases you will have your default site collection where everyone in your organization will have access. This is most likely a landing page or home page your users will start at everyday for internal news and activities.
Most organizations also have accounting or human resorce documents that are considered priviledged or only for a smaller subset of users. This is commonly an example of when we might create a separate site collection. Since site collections are individual containers we can assign unique permissions at the top level and be assured that all the files contained are restricted to just the top level users. Yes you can filter permissions down the line as necessary but in this scenario only the accounting department people might be allowed access to the accounting site collection. There may never be a need for someone outside of accounting to access this site so we block permissions at the top to be sure.
In an organization where we may have multiple site collections created for all kinds of various reasons …. Communications, Human Resources, Information Technology, Accounting, Quality, Sales, Shipping …. etc
Users may have access to any number of these sites. By default though since each site is essentially a silo of information there is no direct link or navigation between these site collections.
In the example we have the Information Technology site with only 1 ‘Home’ navigation link added. We can easily configure sub-site navigation links and add in static links to other sites.
The PROBLEM here is that we will need to do this for EVERY site collection. If we wanted to have links for Human Resources and Accounting we need to create and add static links to these sites. However once you jump over to the Accounting site you will also need to setup the same links back to Human Resources and Information Technology.
The 2nd Problem — Security!
If I am in Information Technology and I should not have any access to the Accounting site but you just added a link to accounting in the navigation bar …. what happens? SharePoint will not let me navigate to accounting without the proper permission which is good but I will receive a 404 bad page error. That is a poor user experience! Ideally the link shouldnt even appear for me.
The Solution: Hub Sites
Finally we can now connect our site collections at the top level to one central site and use a common shared navigation. All other security elements and search experiences will remain in place.
This is the starting point. We are using a new ‘Communication’ site created from the main SharePoint menu. This communication site is intended to be the home or landing page for everyone in our organization. This site will contain useful links, news and company information that everyone can view. Possibly your organization will choose to have Power BI dashboards or other daily metrics. Links to the Employee Handbook or Vacation requests in the HR site as well.
For the most part this site looks like every other site except now there is one extra navigation bar across the top. In this case ‘SP411Communicatoins’ is a default link to this site added by default.
Notice the ‘Add link’ button right beside it. Using this button you can add links to other site collections as necessary in your tenant.
Hub Sites also provide your connected sites a consistent branding theme and the ability to roll news items up to the parent level hub site. This can be very useful in areas where you dont want to publish news items in multiple locations.
Now the downside… We just added a static link to ‘Accounting’ in our Hub Site. The problem with that is these static links are NOT security trimmed per user. So if I do not have access to the Accounting site the link still appears for me and when i click on it I will get the dreaded 404 bad page error.
After a few minutes the link should show up in the child site. Keep in mind often changes in SharePoint take a few minutes for timer services and search services to finish crawling your changes.
Ok so the next issue is the security trimming of the static navigation items created. This is where the process becomes much harder for the average organization to correct. At this time the way to correct the navigation is by using a custom web part. There are already a few free web parts available most commonly found on GitHub by some very nice developers. It usually will take a developer to help you deploy these web parts with a few changes into your tenant.
The final topic of this post is to help you get started with Hub Sites. Once again at this time you will need your tenant admin and some Powershell scripts. Start by downloading the latest SharePoint Online Management Shell.
Run the following commands adding your own tenant name and parent hub site name. You can just hit Enter if asked about ‘Principals’.
# Connect to admin site (non-pnp)
Connect-SPOService -Url ‘https://myTenantName-admin.sharepoint.com‘
Register-SPOHubSite -Site ‘https://myTenantName.sharepoint.com/sites/myParentHubSite‘
If that works successfully for you then the parent Hub Site should appear with the new navigation elements. It is now time to join in additional site collections to the parent hub site.
Browse/ navigate to one of your site collections — at the top root level. Take notice … Is your home landing page a modern SharePoint page or are you looking at a classic page? Modern pages are the only views supported!
Here is your proof …. in a classic site check the gear wheel for settings….
In the classic settings menu you will not find the ‘Site Information’ option. Now open a modern page and check the same menu.
Now using the ‘Site Information’ option you should see the ‘Hub site association’ drop down section with your newly created Hub Site. Once you select that the site is joined to the hub.
At this point the site collection is joined to the parent hub site and the navigation and theming elements will behave as displayed above.
At this time there is an upper limit of 50 for the number of parent Hub Sites you can provision. (That is still pretty high though)