How to change the way search results are displayed in SharePoint Server 2013
SharePoint Server 2013 and SharePoint Online comes with many default search features that help users find what they’re searching for. But you might want your search results to look a certain way, for example, display information that’s specific to your company or business.
In this blog series, I’ll explain how you can customize the way search results are displayed. To help explain, I’ll use examples from a tool that I use on a daily basis: an internal list of Microsoft publications.
As you know, Microsoft publishes thousands of articles across TechNet, MSDN and office.com. To assist in the publishing process, we use several SharePoint lists. Each item in a list represents an article or a media file. To quickly find information about a list item, we’ve set up a Search Center that searches across all of the lists.
Throughout this series, I’ll show you how I’ve changed the way search results are displayed from this…
... to this:
In this series, we’ll cover:
- Understanding how search results are displayed
- Understanding how item display templates and hit highlighting work
- How to create a new result type
- How to display values from custom properties in search results - option 1
- How to display values from custom properties in search results - option 2
- How to display values from custom managed properties in the hover panel
- How to add a custom action to the hover panel
- How to change the text that is displayed in the Search Box Web Part
--- - Addendum: How to change the order in which search results are displayed in SharePoint Server 2013
How search works in a few words
In case you’re not so familiar with how search works, here’s a high level representation that might be useful for this series.
- Content is stored in lists and libraries. Site columns are used to store values, or in other words information, about each item in a list or library.
- When lists and libraries are crawled, site columns and the site column values are added to the search index.
- In the search index, site columns are “transformed” into managed properties. Site column values are “transformed” into managed property values
- On a search page, a user enters a query in a Search Box Web Part. The query is sent to the search index.
- Search results are sent from the search index to a search results page, and displayed in a Search Results Web Part. The Search Results Web Part uses display templates that specify which managed property values should be displayed.
Here’s how to understand this high level representation in the context of Microsoft’s internal Search Center.
- A Microsoft writer creates a list item for an article she'll be writing. Site columns, such as Title, Content Summary and Technical Subject, are used to store values, or in other words, information, about the article.
- The list has been marked for continuous crawl. This means that that the list will be crawled at a set interval, for example, every minute.You can see the crawl schedule in List Settings --> Catalog Setting.
- From Site Settings --> Search Schema you can search for managed properties.In my scenario, there’s a managed property named ContentSummaryOWSMTXT, and another one named owstaxIdTechnicalSubject. They represent the site columns Content Summary and Technical Subject (for more details about the “transformation” of site columns into managed properties, see the blog post From site column to managed property - What's up with that?).
- On a search page, a user enters a query, for example customize search results.
- On a search results page, search results are displayed in a Search Results Web Part. The Web Part uses display templates that specify that the values from the managed properties ContentSummaryOWSMTXT and owstaxIdTechnicalSubject should be displayed in the search results (the display templates specify many other things as well, but for now, let’s just concentrate on the values of these two managed properties). The second search result is the list item created in step 1. We can see that the values from the managed properties ContentSummaryOWSMTXT and owstaxIdTechnicalSubject are are displayed in the search result.
You can also see details such as a small icon next to each search result on the page. These icons represent the site to which the article is published, such as Office.com and TechNet . The search result also contains the words "Technical Subject" in front of the value search. I’ll show you how I added the icons and the words in later blog posts. But first, I'll tell you more about how search results are displayed.
Next blog article in this series
Understanding how search results are displayed
Additional Resources Overview of search in SharePoint Server 2013
Comments
Anonymous
January 01, 2003
hi bella,Its a very helpful post.Can you explain a little how paging in display template works?Especially on the part where on click of pagination a query string "#s" and "#k" is attached to the url?Anonymous
January 01, 2003
Hi Colin, Thanks for that very nice feedback. Although only my name appears on the blog, I have had A LOT of help from my great colleagues, so it is really a team effort. And we are all happy to hear that you like the series :-) BellaAnonymous
January 01, 2003
Hi Bella,
Thank you for this series of posts! As I understand this information is not valid for Sharepoint Foundation 2013, because "DislayTemplates" folder have no any html files? Is there any way to solve this issue in Sharepoint Foundation 2013?Anonymous
January 01, 2003
Hi mr.nik,
I'm sorry, but I don't know how you can customize search results in SharePoint Foundation 2013.
BellaAnonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
Hi Jeremiah, I hope this series will help you. If not, I would really appreciate if you could let me know about any problems you are facing. We will do our best to help you as best as we can. BellaAnonymous
January 01, 2003
Hi Ankit,
I don't quite understand what you mean by CEWS.
But, after you modified and saved your display template, did you see a Property Sync alert on your Manage Result Types page? (http://blogs.technet.com/b/tothesharepoint/archive/2013/09/11/how-to-display-values-from-custom-managed-properties-in-search-results-option-1.aspx#Modify1)
BellaAnonymous
January 01, 2003
Hi Fred,
No, I don't have these articles for SharePoint 2010.
BellaAnonymous
January 01, 2003
Hi Hans, Thanks for the input :-) This is a very interesting use case, so I will look into possibly extending the series to include this. BellaAnonymous
January 01, 2003
Hi Sumit,
1. You can create a custom result source and configure it so that it only returns what you're looking for. In your specific scenario, you might have to use Keyword Query Language (http://blogs.technet.com/b/tothesharepoint/archive/2013/09/03/how-to-change-the-way-search-results-are-displayed-in-sharepoint-server-2013.aspx
2. Sorry, I don't know how to do this.
BellaAnonymous
January 01, 2003
Hi Michael,
It's a bit difficult for me to understand your exact situation, so I'll make a few assumptions.
I'm assuming that you have an on-premises environment, and that you are using the Title managed property to display your results. If you go to the Search Schema in Central Administration, you'll see that the Title managed property is mapped to several crawled properties. The order in which these crawled properties are listed is the hierarchy that is used to decide which crawled property value should be displayed. If the first crawled property is empty, the second crawled property will be used. If the second crawled property is empty, the third crawled property will be used etc.
In your case, it sounds like you can move the crawled property Basic:10 (this is the crawled property that represents the file name) to the top of the list of mapped crawled properties.
You'll have to do a full recrawl of your content for the changes to take place.
For an overview of crawled and managed properties in SharePoint Server 2013, see this article: http://technet.microsoft.com/en-us/library/jj219630(v=office.15).aspx
Hope this helps,
BellaAnonymous
January 01, 2003
I'm really looking forward to this series. It will be very helpful for me! Thanks!Anonymous
January 01, 2003
Hi Scott,
I'm not sure if I completely understand your scenario, so could you give me a bit more details about what exactly you are trying to do?
Also, I'm not sure if this applies to your situation, but have you had a look at the information in this article: http://technet.microsoft.com/en-us/library/dn130132(v=office.15).aspx
BellaAnonymous
January 01, 2003
Hi Koushik,
SharePoint Server 2013 has many display templates that you can change to include custom managed properties. Which display template(s) you should change, depends on what type of search results you have.
For information about display templates names as they are connected to result types, see this article:https://technet.microsoft.com/library/dn386874.aspx
Thanks,
BellaAnonymous
January 01, 2003
Hi Edward,
Sorry, I don't know the answer to your question. I suggest that you contact Microsoft Support.
Thanks,
BellaAnonymous
January 01, 2003
Hi Revan,
I'm sorry to hear that you're having problems getting things to work.
Can you verify that after you've modified the display template, on the Manage Result Type page, that a Property Sync alert is shown? (http://blogs.technet.com/b/tothesharepoint/archive/2013/09/11/how-to-display-values-from-custom-managed-properties-in-search-results-option-1.aspx#Modify1
BellaAnonymous
September 03, 2013
It would be nice to extend this series with: How to show associated icons in the Refinement web part. theressomethingaboutsharepoint.blogspot.nl/.../refinement-web-part-show-associated.htmlAnonymous
September 08, 2013
The comment has been removedAnonymous
December 27, 2013
Pingback from How to change the way search results are displayed in SharePoint Server 2013 | Office 365 Singapore for Business - Win-ProAnonymous
May 09, 2014
Bella - Thank you so much for this very informative series! Finally, a great resource about customizing search.
I have a situation where my client wants me to customize search so that keyword results are ranked highest in the search results. The problem I'm running into is that they are running in 2010 mode so lots of the settings & options that are normally accessible thru the 2013 UI are not available. I spoke with a SP dev friend & he suggested that I could access these now hidden settings & options via Visual Studio. He also suggested that I could stand up a separate web app to use as a dedicated enterprise search center.
What are your thoughts?
Thanks in advance!Anonymous
July 21, 2014
The comment has been removedAnonymous
September 02, 2014
Nice article Bella, let me know you if have any idea on masking the urls in sharepoint 2013 search resultsAnonymous
September 29, 2014
How to change the way search results are displayed in SharePoint Server 2013 - SharePoint IT Pro Blog - Site Home - TechNet BlogsAnonymous
October 17, 2014
Hi, do you have an equivalent articles for the exact same thing in Sharepoint 2010? thx!Anonymous
December 09, 2014
It is a nice Article, Need an URGENT help, I basically have to queries,
1. I am stuck at the search configure for SP 2013. I like to get the search results for a document library is the only the title or name of the document. That is if i do a search in the document library the result should not search for the keyword inside the document. It have to search for the name of the document.
2. i have to integrate sharepoint calendar with the exchange calendar (I mean the meeting room calendar).
Any Idea?
Any help would be appreciated
Thank you very much in advance for your kind help.
Regards,
SP~Anonymous
January 07, 2015
The comment has been removedAnonymous
March 06, 2015
Excellent blog posts Bella, very helpful!Anonymous
March 08, 2015
Hi,
Please let me know What is the display template name in which we can include managed property names, so that we can see them in search results.