Recently I was working on SharePoint 2013 intranet portals people results page where I need to display a custom user profile property that maps to notes field in active directory.(I have created a custom search display template)
I created the custom property via central administration in UPS application and mapped it to AD info field. Then I went in to search service application and ran the full crawl hoping that Search application will index the custom property and will appear in Crawled properties list. But it did not show up in the crawled properties.
Later I found out that for the Search to index the custom property it should have some data in that field. After running the full user profile sync I found that the custom property had some data. Then I ran the full crawl again and noticed the Search has created the crawled property.
So the correct sequence will be,
- Create custom user profile property and map to AD field (don’t forget to check the indexed option)
- Run the full user profile synchronisation
- once the sync is completed make sure the custom property is populated with some value
- Run the full search crawl again
- once the full crawl is completed. Go to Search schema page -> Crawled properties and search for the custom property. In my case it was People:<Custom Property Name>
- Create a managed property and map it to crawled property
- Search Index reset is not required for this to work
- When creating Managed property make sure to select the following and check “Searchable”, “Queryable” and “Retrievable” options (in edit managed property page)