in

Dot Net Mafia

Group site for developer blogs dealing with (usually) .NET, SharePoint 2013, SharePoint 2010, Office 365, SharePoint Online, and other Microsoft products, as well as some discussion of general programming related concepts.

This Blog

Syndication

Archives

Corey Roth [MVP]

A SharePoint MVP bringing you the latest time saving tips for SharePoint 2013, Office 365 / SharePoint Online and Visual Studio 2013.

Adding a link to a document’s folder in SharePoint 2010 Enterprise Search

One request I have seen a lot from people since MOSS 2007 is the desire to add a link to the subfolder of a document on the search results page.  This is useful when the user wants to see what else is in that folder or if they want to perform other operations on that document (such as viewing properties or compliance details).  In SharePoint 2007, I wrote the Document Link Handler to help with this.  It simply looked up the details on the item and redirected the user to the appropriate page.  In SharePoint 2010, this is not necessary any more since they added the new sitename column in the search results XML document.  Today we will customize the look of the search results page.  All we have to do is use the new sitename column in the XSL that displays the results.

There are two ways to go about this.  If you only want this new link to show up on certain results pages, you can edit the CoreResultsWebPart in a given search center.  If you want the link to be global and to appear on all search centers, you can edit the Local Search Results federated location.  Today we’ll demonstrate modifying the federated location, but if you want to just change a specific page, edit it, and then edit the Core Results Web Part.  You will then click the XSL editor button and make the same changes as we are about to do in the federated location. 

To edit the federated location go to your Search Service Application –> Federated Locations, then edit Local Search Results.  Expand the Display Information and scroll down to the Core Search Results Display Metadata section.

EnterpriseSearchFolderLinkFederatedLocation

Ensure Use Default Formatting is not checked and click the button next to the XSL textbox.  I found that the best place to add the link is near the location where the View in Browser link normally appears.  The place in the file is more than half way down.  If you see the ViewInBrowser link you know you are near the right spot.  Here is what it looks like.

EnterpriseSearchFolderLinkXSL1

Now, what do we add there?  It’s pretty simple.  We use XSL to create a link and pass the value of the sitename element.  However, I recommend that you only show the link for documents.  The sitename element is always populated but you might find that it has less relevance on things like non-SharePoint sites or for list items.  It’s up to you if you want to include it or not though.  Here is the code that you will want to add.

<xsl:if test="isdocument = 'True'">

  <a>

    <xsl:attribute name="href">

      <xsl:value-of select="sitename"/>

    </xsl:attribute>

    View Folder

  </a>

</xsl:if>

One thing to note is that in SharePoint 2007, you used to compare isdocument to a value of 1.  That doesn’t work anymore.  You have to compare it to True or False.  That’s really all you have to do.  Here is what it looks like together.

EnterpriseSearchFolderLinkXSL2

Once you have the change complete, click OK and then save your changes to the federated location.  It usually takes about a minute for your changes to show up when you do search.  So wait a bit and then go to your search center and give it a try.  Here is what the link looks like on my results screen.

EnterpriseSearchFolderLinkResults

If the link doesn’t show up for you, try another search term.  If you still have issues, try removing the isocument xsl:test element and see if the link shows up then.  This link is pretty easy to add, so give it a try today.  I think the link to the document’s folder is really handy and I think your users will appreciate it.

Comments

 

Adding a link to a document's folder in SharePoint 2010 Enterprise … « xsl said:

Pingback from  Adding a link to a document&#039;s folder in SharePoint 2010 Enterprise &#8230; &laquo;  xsl

August 25, 2010 3:02 PM
 

Mathias.Florian@box-consulting.at said:

code is placed in the wrong line!!!!

insert it before </span> - 4 lines higher and you will be happy ;)

August 26, 2010 4:27 AM
 

CoreyRoth said:

@Mathias

Grrr.  The wrong screenshots got posted.  I'll get them corrected.  Thanks for the catch!

August 30, 2010 1:40 PM
 

MY said:

How cane we combine this solution with your 2007 document link handler?

November 10, 2010 3:55 PM
 

Joy Earles said:

Just what I needed. Thanks, Corey!

December 5, 2010 11:20 AM
 

Twitter Trackbacks for Adding a link to a document???s folder in SharePoint 2010 Enterprise Search - Corey Roth [dotnetmafia.com] on Topsy.com said:

Pingback from  Twitter Trackbacks for                 Adding a link to a document???s folder in SharePoint 2010 Enterprise Search - Corey Roth         [dotnetmafia.com]        on Topsy.com

December 5, 2010 12:04 PM
 

CoreyRoth said:

@Joy Great!  Glad it was helpful.

December 6, 2010 2:51 PM
 

lennot said:

You have to put more guides up! This is great stuff.

halvat lennot. This is just what I needed for my Sharepoint site.

March 22, 2011 3:01 AM
 

Ayaz Mumtaz said:

The Solution did not work for FAST Search, It opens the site but not the document's folder. Is there workaroun or other solution?

October 28, 2011 4:50 AM
 

Ayaz said:

Link to Document Library did not work for FAST Search. Is there any workaround to get it working?

November 2, 2011 10:59 AM
 

CoreyRoth said:

You are correct that it does not work with FAST Search for SharePoint.  You can consider the document link handler or another approach that we have used in 2007.

November 7, 2011 8:34 PM
 

Matt said:

Is there a way to get it to open a library in another web app? We use a resource farm for search, and it tries to go to the library on that farm, which doesn't exist.

November 30, 2011 2:51 PM
 

CoreyRoth said:

@Matt so the SiteName parameter doesn't return the URL of the directory, it returns the value of the local farm?

December 7, 2011 8:53 PM
 

michalM said:

is there a way to add a link to the documents property page?

January 9, 2012 6:20 PM
 

CoreyRoth said:

January 13, 2012 2:30 PM
 

FAST: Open Library/Location in FAST for SharePoint search results « « www.melcher.it www.melcher.it said:

Pingback from  FAST: Open Library/Location in FAST for SharePoint search results &laquo;  &laquo; www.melcher.it www.melcher.it

February 20, 2012 11:25 AM
 

Max said:

With little efforts its working with FAST - thanks for the inspiration! melcher.it/.../fast-open-librarylocation-in-fast-for-sharepoint-search-results

Cheers

Max

February 20, 2012 5:06 PM
 

SharePoint Saturday – SharePoint Online 2010 de mogelijkheden en beperkingen « SPC NL said:

Pingback from  SharePoint Saturday &#8211; SharePoint Online 2010 de mogelijkheden en beperkingen &laquo;  SPC NL

March 26, 2012 3:07 AM
 

SharePoint Saturday – SharePoint Online 2010 de mogelijkheden en beperkingen « SPC NL said:

Pingback from  SharePoint Saturday &#8211; SharePoint Online 2010 de mogelijkheden en beperkingen &laquo;  SPC NL

March 26, 2012 3:07 AM
 

Add “View Folder” link in core search results web part | Sean Carter said:

Pingback from  Add &#8220;View Folder&#8221; link in core search results web part | Sean Carter

May 15, 2013 4:54 AM
 

steve said:

How can we implement this on sharepoint 2013 sp1 with enterprise search?

May 8, 2014 6:57 PM
 

CoreyRoth said:

@Steve use the parentlink managed property.

June 3, 2014 8:29 AM

Leave a Comment

(required)  
(optional)
(required)  
Add

About CoreyRoth

Corey Roth is an independent SharePoint consultant specializing in ECM, Apps, and Search.
2012 dotnetmafia.
Powered by Community Server (Non-Commercial Edition), by Telligent Systems