Posted By: Tom Daly
Date: May 23, 2016 at 4:04 pm
This all started as a request from a client to hide only certain users from the people search. I’ve decided on this route because the management interface already exists to update user profiles and it would be very little work to add a user profile property, get it crawled and use that as the filter in the people search results webpart. Below I will explain how I was able to accomplish this in Office 365 but the same would work for a SharePoint 2013 on prem.
In Office 365 -> SharePoint Administration -> User Profiles
Click “Manage User Properties” under the People Group
Click “New Property”
Set the following properties (everything else leave be)
Display Name: HideFromPeopleSearch
Policy Setting: Optional
Default Privacy Settings: Everyone
Search Settings -> Alias [checked]
-> Indexed [checked]
Wait some amount of time for O365 to index the User Profiles and retrieve this new field.
You’ll know it’s ready when you can find the new Property in the Search Schema, Crawled Properties.
From the Admin Center click “search” in the left hand menu
Click “Manage Search Schema”
Click “Crawled Properties”
Enter “Hide” in the Crawled properties search box, then click the green arrow
You will see the property appear in the search results when the property has been successfully crawled.
Next you will need to create a “Managed Property”, Click On the “Managed Properties” link
Click “New Managed Property”
Enter the following information:
Property Name: HideFromPeopleSearch
Add Property Mapping -> People:HideFromPeopleSearch
Click Add A Mapping
Enter “Hide” in the search box, click the Find button
Select “People:HideFromPeopleSearch”, click the OK button
Leave all the other properties as-is, click OK
You will now have to wait until Office 365 runs a full crawl on your site for the property to become available in search. When this action takes place is unknown. (I’ve head 4 hours)
Next go to the people search page
Edit the page and Edit the Web Part Properties of the People Search Core Results
Click Change Query
In the Property Filter drop down select –Show all managed properties–
Select “Not equals” then “Manual Value”
Enter “True” for the Manual Value
Next Click Add property filter
Click OK in the People Search Core Results, Web Part Properties pane
Save, Check-In & Publish your page – All Set!
This procedure is on a page by page basis. If you have more than 1 people search web part you will need to modify those pages to enable them to hide people.