1

trying to work this out...I have Project Sites (Team Sites) that have a site column added to the Site Pages Library. You edit the properties of the Home Page and select a client name that the project relates to (Lookup to a Client list). There for The meta data entered on the home page will then be part of the sts_site/sts_web item which is indexed.

I need to develop a "Search Centre" whereby I can get all the Documents based on the Client Property of the sites. For example show me all the Project Documents for Client XXX, keeping in mind that Client XXX may have a number of different project sites.

  • Your architecture for the sites/pages is still very unclear for me. Do the clients have their own subsites, or is everything at the same site level? Are there some client-related documents located in several sites? I think your way to go is to get familiar with Document Sets and their Shared Columns and to have a well planned site content type & site column usage for the least effortless maintenance. To give an example for approach, please specify your planned structure. – moe Aug 25 '16 at 6:58
  • Hi @moe so I have a Site Collection for all Projects. Each Project is a subsite. An individual Client could potentially have multiple project sites. These are sites as they are needed to be externally shared with the clients. So rather that have end users have to tag documents with the client name we would like the site to be set with the metadata. – Daniel Aug 25 '16 at 20:46
0

This is the same problem we/most of the people are facing too. The issue here is, SharePoint Search uses index based on each entity and its metadata. Document is inside a SharePoint site and it only inherits its SharePoint site url but not all site metadata for each document. So there is no way Search will be picking up the site metadata to a document. The way you are expecting doesn't work OOB. If you want the solution then you need to do double querying by writing custom solution.

One search API query gets all SharePoint project sites belongs to the client code given. And then second Search API query to scope the documents to only those sites returned from first query. Let me know if you need help!

thanks

-Praveen.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.