A Modern Policy Hub and Archive

Valo & Joanne C Klein

This post covers a Modern, fresh approach to managing and communicating policies across an organization. I’ll walk thru a practical example of provisioning an organization-wide Modern Policy Hub to surface all active policies by leveraging a standardized Information Architecture, modern Policy sites and pages along with modern search to summarize policies by category. And because we only want active policies to show, all expired policies will be automatically moved to an archive location to kick-off retention. This is the modern way of communicating and archiving policy! 

If you’re a Power user in SharePoint, you can build this! Follow along to learn how. 

This is not intended to replace a full-blown policy management tool; however it goes a long way in surfacing active policies to staff in an easy-to-build, scalable way, allows for retention to be applied, and can be customized for more stringent requirements. 

Although this solution uses modern pages, you could build the same solution using documents. 

To demonstrate the Policy Hub, I’ll manage 3 types of policies (HR, Travel, Lending) by following these steps: 

  1. Create a Policy Hub site 
  2. Provision 3 Policy sites (for each type of policy) 
  3. Build Policy pages (1 page per policy) 
  4. Build Summary pages on the Policy Hub to summarize all active policies 
  5. Create a Policy Archive site and publish a Retention policy to it 
  6. Build a Microsoft Flow to move policies to Archive site when expired

Create Policy Hub Site 

Using a modern Communication site as the template, provision a new site called Policy Hub. Identify this site as a SharePoint Hub so all other policy sites can be joined to it. 

Provision 3 Policy Sites 

I’ll create a Policy Site for each of the 3 types of Policies (HR, Travel, Lending) with standard information architecture and join each to the Policy Hub site above. The advantage of this model is different permissions can be assigned to each of the Policy sites for policy administrators. Create this via Site Design/Site Script or manually as follows: 

Step 1Add site columns 

  • Policy Effective date (optional) 
  • Policy Expiry date (optional) 
  • Policy Category (hidden, choice: HR, Lending, Travel) 

Step 2Add site content type, Policy, inheriting from Site Page with above 3 site columns 

Step 3Add content type Policy to the Site Pages library in each of the 3 Policy sites 

  • Add ‘Policy’ to the HR Policy site (default Policy Category to ‘HR’) 
  • Add ‘Policy’ to the Lending Policy site (default Policy Category to ‘Lending’) 
  • Add ‘Policy’ to the Travel Policy site (default Policy Category to ‘Travel’) 

Step 4: Create a filtered view of the Site Pages library to show Content Type = Policy 

Step 5: Add the view to the top navigation on each Policy site 

Step 6: Join each Policy site to the Policy Hub 

Build Policy Pages 

This solution requires each policy to be represented by 1 policy page (you could also use a document to represent each policy). Each policy page will have an effective and expiry date (if known) set on each page by editing the page properties. These dates are what will determine whether a policy is active. 

To take advantage of the “Copy of this page” menu option, build your first policy page with a standard and consistent format, including the Page Properties web part, and then make all subsequent policy pages based off that. This saves time and will provide a consistent look and feel across all policy pages. 

You could set up page approval on Policy pages, so they won’t show in the Hub until they’re approved:  https://techcommunity.microsoft.com/t5/SharePoint/Announcing-SharePoint-page-approvals/td-p/215466 

If you are using documents instead of modern pages… take advantage of the new document template feature to provide a consistent look to a policy document. 

Here’s an example of a Policy page I built and what I will use to create all other Policy pages from on each site. Note that it includes the Policy effective date using the Page Properties web part. 

Image #1 - Policy Page template

Summarize the Policies on the Hub 

On the Policy Hub site, build a home page to show a thumbnail image for each of the 3 types of policies (HR, Lending, Travel in my case) with links to each of the 3 modern pages summarizing the policies of that type. 

Also, add a Recently added policy section using a Highlighted Content web part showing the 5 most recent policy pages sorted descending by effective date. 

Image #2 - Policy Hub homepage

Build 1 page for each policy category using the Highlighted Content web part filtered on the managed property, PolicyCategoryOWSCHCS, to be either HR, Lending, or Travel.  

Image #3 - Policy Category Filter

This is what the filtered Policy pages look like on the Policy Hub for Travel Policies. 

Image #4 - Policy summary

Create a Policy Archive site and Publish Retention Policy to it 

Don’t forget about retention! Using a modern Communication site as the template, provision a new site called Policy Archive and join it to the Policy Hub site above. This site will be used to house all expired policies via a Microsoft Flow. 

In the Security & Compliance Center, create a new Retention Policy to retain everything for 7 years past the created date and then delete. Publish this retention policy to the Policy Archive site. This will ensure when Policy pages are moved to the Policy Archive site, they will be retained for 7 years and then automatically deleted! 

Image #5 - Retention Policy

All types of policies will be moved to this site when they expire, each with a different policy category. Create a view of the library to group/filter based on policy category. 

Image #6 - Policy Archive

Pro tip: Remove the Policy Archive site from search results so expired policies do not appear when end-users are searching for policies. (Site settings… search and offline availability) 

Build a Flow to Archive Policies 

A daily Microsoft Flow will run to move any published Policy pages whose expiry date has passed to the Policy Archive site. 

This Flow determines if the page is published and, if it is, checks if the expiry date has passed. If it has, it will use the new Move file action in Microsoft Flow to move the page from the Policy site to the Policy Archive site. Here is the pertinent part of the flow to determine if the page is published and then move it. These steps are executed if the policy expiry date is less than or equal to today. 

Image #7 - Flow first part

Image #8 - Flow second part

I hope you found this post helpful in demonstrating many of the modern capabilities in SharePoint and that it sparked a few ideas of your own! Although I demonstratePolicy management with modern pages, a similar technique could be used for managing, communicating, and retaining other information with either modern pages or documents. 

Thanks for reading. 


Would you like to learn more from the incredible Joanne C Klein? We’ve got you covered! 😉👍

Read what she has to say about:

Integrate the Microsoft 365 Learning Pathways solution into your own modern Adoption Center

Site governance using Microsoft Flow and Site Designs

Content type benefits in Modern SharePoint

Controlling SharePoint sprawl with modern governance


Would you like to take your Modern SharePoint experience to new heights? Look no further than Valo Digital Workplace! 😉


a free demo today!

Would you like to see Valo in action? Fill in this form and we’ll contact you shortly for a quick demo.

We keep your information safe. Read more from our Privacy Policy.