Exclude a Column from SharePoint Search Crawl
Requirement: Exclude a column from SharePoint search.
By default, the SharePoint search engine craws and indexes all documents and their associated metadata properties from lists and libraries. In our case, We keep few fields for configuration in a custom SharePoint application and don’t want those fields to appear in SharePoint Search results.
How to exclude a column from SharePoint Search?
Here is how you can remove columns from SharePoint search:
- Navigate to the site settings page by clicking the settings gear
- On the Site Settings page, click on the “Searchable Columns” link under the search group.
- Select the check box next to the column(s) that you want to suppress from the search.
- Click OK to save your changes.
This ensures the particular metadata column isn’t picked up by the search engine in SharePoint and excludes the site column data within the current site.
PowerShell Script to Exclude Field from Search:
SharePoint Fields/Columns has a property: NoCrawl, just turn it ON, we can exclude columns from SharePoint Search! Here is how I turned Off the search visibility of a field using PowerShell:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Set these two variables accordingly
$WebURL = "https://sharepoint.crescent.com"
$FieldName = "ConfigData"
#Get the Web
$web = Get-SPWeb $WebURL
#Get the field
$Field = $web.Fields[$FieldName]
#Set the search prefererence
$Field.NoCrawl = $true
$Field.Update($true)
It takes effect after a search crawl takes place.
Hi, Can we take the complete list of searchable columns which listed in ../nocrawlsettings.aspx?
I need to cross check the list present in Central Administration – Search Service Application – Managed Properties:-
Here we will be seeing list of all managed property with columns “Searchable, Query-able, Refinable, etc.
I need to take a complete list of Searchable columns which are mapped with specific Site Collection! Need your inputs in powershell. Thanks in advance!!!