I had a few challenges in Search driven development approach. Here I am going to cover both the problems and workarounds.
Currently I am developing a publishing portal based on Mavention site case study. The targeted site audiences are Anonymous Users (99%) and Web Administrators (1%). Initially I planned to develop a portal using SharePoint 2013 cross site publishing approach.
But I have a million of products data in data warehouse system and can not load all these data into Authoring Site product catalog list. So I modified the development approach like below.
I wrote the following posts based on the above approach.
- SharePoint 2013 – Develop a Publishing portal using BCS, Enterprise Search and Content Search Web Part
- SharePoint 2013 Search Refinements for External Content Type (BCS) data
- SharePoint 2013 / SharePoint Online : Search REST API with AngularJs (Alter native to content search Webpart)
We assume that the authoring site URL is http://sp2013dc/sites/authoring and the publishing URL is http://sp2013dc/sites/publishing and the product details should be accessible in both sites.
For example, http://http://sp2013dc/sites/authoring/product/tt002343 and http://shttp://sp2013dc/sites/publishing/product/tt002343
For crawling the product URLs, we should create the Action URL like below and the URL will be unique. But I want to access the same product with two different action URLs.
But SharePoint search will crawl the product using only one URL. I posted the issues in MSDN but I unable to find the solution for this issue. So we have to use only one site collection for both authoring and publishing.
So I modified the architecture like below. Now we have only one site collection for both Authoring and Publishing.
The product URLs problem is solved now but I am aiming to develop a site looks like Mavention web site and they have completely customized their publishing portal master page. We can not found any SharePoint related script files (core.js, sp.js, ribbon.js) in the page view source. But they are using two site collections (Authoring and Publishing) and they are customized only the publishing master page and not authoring one.
But I am using only one site collection for both the functionalities. So I have planned to customize the master page based on roles. For anonymous users, I plan to remove all the SharePoint script using SPSecurityTrimmedControl control if the request from anonymous users. I wrote the separate post for master page customization.
How to customize the SharePoint 2013 Master Page for Anonymous Users
In this post, I have covered few workarounds for search driven development. I hope this post will help you.