SlideShare a Scribd company logo
SharePoint 2013 Search and
Creating Dynamic Content
Management Solutions
Ryan McIntyre
MCITP, MCPD
National Architect
@ryanmcintyre
© Copyright 2014, Neudesic. All rights reserved.
• SharePoint 2013 Search Overview
• Changes from 2010
• Search Solutions
• OOTB Web Parts Review
• API
• Server side
• Client side
• Packaging & Deployment
Leave Now…Or…
© Copyright 2014, Neudesic. All rights reserved.
Scenarios
© Copyright 2014, Neudesic. All rights reserved.
Powerful Engine
2013 Search Intro
FAST
Index FS4SP
2010
Search
2013
Search
© Copyright 2014, Neudesic. All rights reserved.
2013 Search Architecture
HTTP
File shares
SharePoint
User profiles
Lotus Notes
Documentum
Exchange folders
Custom - BCS
SharePoint
SP Apps
Devices
Non-SP UX
Public API
Unit of scale/role boundary
© Copyright 2014, Neudesic. All rights reserved.
Core Building Blocks
Content Source
Search Schema
Now available through site
administration
Query Rule
Customization of returned
results
Captures Intent, composed of
Query Condition
Query Action
Publishing Options
© Copyright 2014, Neudesic. All rights reserved.
Core Building Blocks
Query Transforms
Web Parts (3)
Query Rule (2)
Result Source (1)
Result Source
Scope +
Federated +
CSWP
© Copyright 2014, Neudesic. All rights reserved.
Core Building Blocks
Result Type
How to display types of
results
Display Templates
CSWP
Hover Panel
Refiner
Search Results
© Copyright 2014, Neudesic. All rights reserved.
Search Experience
© Copyright 2014, Neudesic. All rights reserved.
Search in Action Demo
© Copyright 2014, Neudesic. All rights reserved.
Executing Queries
© Copyright 2014, Neudesic. All rights reserved.
Executing Queries: KQL
© Copyright 2014, Neudesic. All rights reserved.
 Keywords
 http://server/site/_api/search/query?querytext='{KQL Query}‘
 Selecting Properties
 http://server/site/_api/search/query?querytext='test'&selectproperties='Title,
Rank'
 Sorting
 http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTi
me:descending'
 http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTi
me:descending,Rank:ascending
Executing Queries: REST
© Copyright 2014, Neudesic. All rights reserved.
Executing Queries: REST
<d:RelevantResults m:type="Microsoft.Office.Server.Search.REST.RelevantResults">
<d:RowCount m:type="Edm.Int32">16</d:RowCount>
<d:Rows m:type="SP.SimpleDataTable">
<d:Rows>
<d:element m:type="SP.SimpleDataRow">
<d:Cells>
<d:element m:type="SP.KeyValue">
<d:Key xml:space="preserve">Rank</d:Key>
<d:Value xml:space="preserve">29.4688339233398</d:Value>
<d:ValueType xml:space="preserve">Edm.Decimal</d:ValueType>
</d:element>
© Copyright 2014, Neudesic. All rights reserved.
Executing Queries: CSOM
ClientContext ctx = new ClientContext("http://sharepointonline/site");
var query = new KeywordQuery(ctx, ctx.Site);
query.QueryText = "Search terms";
query.ResultTypes = ResultType.RelevantResults;
query.Id = Guid.NewGuid();
var queries = new KeywordQuery[1];
queries[0] = query;
SearchExecutor searchExecutor = new SearchExecutor(ctx);
var rcc = searchExecutor.ExecuteQueries(queries);
ctx.ExecuteQuery();
© Copyright 2014, Neudesic. All rights reserved.
Query Debugging
© Copyright 2014, Neudesic. All rights reserved.
CSWP & Display Template Deployment
© Copyright 2014, Neudesic. All rights reserved.
• <cringe>Design in UI</cringe>
• Export
• Visual Studio solution
• Create “host” page
• Add markup for CSWP from export
• Properly escape ‘{‘, ‘}’, and quotes in DataProviderJSON property
CSWP Development & Deployment
© Copyright 2014, Neudesic. All rights reserved.
• Create HTML file and verify results in UI
• Export JS
• Visual Studio solution
• Include JS
• Deploy to “_catalogs/masterpage/Display Templates/Content Web
Parts”
• {Optionally, deploy HTML (not JS) and programmatically update file
post-deployment to generate JS}
Display Template Development &
Deployment
© Copyright 2014, Neudesic. All rights reserved.
Deployment Demo
© Copyright 2014, Neudesic. All rights reserved.
Scenarios
© Copyright 2014, Neudesic. All rights reserved.
Ryan McIntyre
ryan.mcintyre@neudesic.com
http://blog.randomdust.com
@ryanmcintyre
303-520-6337
© Copyright 2014, Neudesic. All rights reserved.
• http://sp2013searchtool.codeplex.com/
Resources
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.
© Copyright 2014, Neudesic. All rights reserved.

More Related Content

PPTX
Essential Knowledge for SharePoint Add-Ins
PPTX
Developing Apps for SharePoint Store
PPTX
Gabriel Gayhart - XML Pointer File Example
PDF
Practical management of development & QA environments for SharePoint 2013
PDF
O365Con18 - Hybrid SharePoint Deep Dive - Thomas Vochten
PDF
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
PPTX
Get started with building native mobile apps interacting with SharePoint
PPTX
Visio Services in SharePoint 2010
Essential Knowledge for SharePoint Add-Ins
Developing Apps for SharePoint Store
Gabriel Gayhart - XML Pointer File Example
Practical management of development & QA environments for SharePoint 2013
O365Con18 - Hybrid SharePoint Deep Dive - Thomas Vochten
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Get started with building native mobile apps interacting with SharePoint
Visio Services in SharePoint 2010

What's hot (20)

PPTX
Developer’s Independence Day: Introducing the SharePoint App Model
PPTX
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
PPTX
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
PPTX
App Model For SharePoint 2013
PPTX
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
PPTX
MSDN - SharePoint 2013 to app or not to app
PPTX
Developing a Provider Hosted SharePoint app
PPTX
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
PDF
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
PPTX
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
PPTX
Portable single page applications with AngularJS in SharePoint
PDF
O365Con18 - Site Templates, Site Life Cycle Management and Modern SharePoint ...
PPTX
SharePoint Server 2013: to app or not to app?
PPTX
Access share point-2013-data-with-provider-hosted-apps
PDF
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
PPTX
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
PDF
O365Con18 - PowerApps build custom forms for SharePoint with Azure Maps - Bra...
PPTX
[Pinto] Is my SharePoint Development team properly enlighted?
PPTX
Chris O'Brien - Introduction to the SharePoint Framework for developers
PDF
JavaScript and jQuery for SharePoint Developers
Developer’s Independence Day: Introducing the SharePoint App Model
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
App Model For SharePoint 2013
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
MSDN - SharePoint 2013 to app or not to app
Developing a Provider Hosted SharePoint app
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Portable single page applications with AngularJS in SharePoint
O365Con18 - Site Templates, Site Life Cycle Management and Modern SharePoint ...
SharePoint Server 2013: to app or not to app?
Access share point-2013-data-with-provider-hosted-apps
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
O365Con18 - PowerApps build custom forms for SharePoint with Azure Maps - Bra...
[Pinto] Is my SharePoint Development team properly enlighted?
Chris O'Brien - Introduction to the SharePoint Framework for developers
JavaScript and jQuery for SharePoint Developers
Ad

Similar to SharePoint 2013 Search and Creating Dynamic Content Management Solutions (20)

PPTX
Developing a provider hosted share point app
PDF
I2 - SharePoint Hybrid Search Start to Finish - Thomas Vochten
DOC
DOC
Suresh_Kumar_Mahala [10729857]
PPTX
ASP .Net Core SPA Templates
DOC
Amit Kumar Architect with Web and Angular JS
PPTX
Custom Development in SharePoint – What are my options now?
PPTX
SPFx- A modern development model for SharePoint
PPTX
SPSNL17 - Implementing SharePoint hybrid search, start to finish - Thomas Voc...
PPTX
D2 - Automate Custom Solutions Deployment on Office 365 and Azure - Paolo Pia...
PPTX
An Introduction to the Office 365 Patterns and Practices Project
DOC
Chinnasamy Manickam
PPTX
Vincent biret azure functions and flow (toronto)
PPTX
Vincent biret azure functions and flow (ottawa)
PPTX
SPS Gulf : SharePoint 2013 Cloud Business App
PPTX
A Beginner's Guide to Client Side Development with Javascript
PPTX
Getting Started with Site Designs and Site Scripts - SPSChi
PPTX
SPS calgary 2017 introduction to azure functions microsoft flow
PPTX
Custom Development for SharePoint
PPTX
What's new for Developers in SharePoint 2013
Developing a provider hosted share point app
I2 - SharePoint Hybrid Search Start to Finish - Thomas Vochten
Suresh_Kumar_Mahala [10729857]
ASP .Net Core SPA Templates
Amit Kumar Architect with Web and Angular JS
Custom Development in SharePoint – What are my options now?
SPFx- A modern development model for SharePoint
SPSNL17 - Implementing SharePoint hybrid search, start to finish - Thomas Voc...
D2 - Automate Custom Solutions Deployment on Office 365 and Azure - Paolo Pia...
An Introduction to the Office 365 Patterns and Practices Project
Chinnasamy Manickam
Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (ottawa)
SPS Gulf : SharePoint 2013 Cloud Business App
A Beginner's Guide to Client Side Development with Javascript
Getting Started with Site Designs and Site Scripts - SPSChi
SPS calgary 2017 introduction to azure functions microsoft flow
Custom Development for SharePoint
What's new for Developers in SharePoint 2013
Ad

More from InnoTech (20)

PDF
"So you want to raise funding and build a team?"
PDF
Artificial Intelligence is Maturing
PDF
What is AI without Data?
PDF
Courageous Leadership - When it Matters Most
PPTX
The Gathering Storm
PPTX
Sql Server tips from the field
PPTX
Quantum Computing and its security implications
PPSX
Converged Infrastructure
PPTX
Making the most out of collaboration with Office 365
PPTX
Blockchain use cases and case studies
PPTX
Blockchain: Exploring the Fundamentals and Promising Potential
PDF
Business leaders are engaging labor differently - Is your IT ready?
PDF
AI 3.0: Is it Finally Time for Artificial Intelligence and Sensor Networks to...
PPTX
Using Business Intelligence to Bring Your Data to Life
PDF
User requirements is a fallacy
PDF
What I Wish I Knew Before I Signed that Contract - San Antonio
PPTX
Disaster Recovery Plan - Quorum
PPTX
Share point saturday access services 2015 final 2
PDF
Sp tech festdallas - office 365 groups - planner session
PPTX
Power apps presentation
"So you want to raise funding and build a team?"
Artificial Intelligence is Maturing
What is AI without Data?
Courageous Leadership - When it Matters Most
The Gathering Storm
Sql Server tips from the field
Quantum Computing and its security implications
Converged Infrastructure
Making the most out of collaboration with Office 365
Blockchain use cases and case studies
Blockchain: Exploring the Fundamentals and Promising Potential
Business leaders are engaging labor differently - Is your IT ready?
AI 3.0: Is it Finally Time for Artificial Intelligence and Sensor Networks to...
Using Business Intelligence to Bring Your Data to Life
User requirements is a fallacy
What I Wish I Knew Before I Signed that Contract - San Antonio
Disaster Recovery Plan - Quorum
Share point saturday access services 2015 final 2
Sp tech festdallas - office 365 groups - planner session
Power apps presentation

Recently uploaded (20)

PDF
20250805_A. Stotz All Weather Strategy - Performance review July 2025.pdf
PPTX
CkgxkgxydkydyldylydlydyldlyddolydyoyyU2.pptx
PDF
WRN_Investor_Presentation_August 2025.pdf
PPTX
Probability Distribution, binomial distribution, poisson distribution
PDF
Business model innovation report 2022.pdf
PDF
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
PDF
Deliverable file - Regulatory guideline analysis.pdf
PDF
A Brief Introduction About Julia Allison
PDF
Reconciliation AND MEMORANDUM RECONCILATION
PPTX
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
PDF
kom-180-proposal-for-a-directive-amending-directive-2014-45-eu-and-directive-...
PDF
IFRS Notes in your pocket for study all the time
DOCX
Euro SEO Services 1st 3 General Updates.docx
PPT
Chapter four Project-Preparation material
PDF
How to Get Funding for Your Trucking Business
PPTX
Amazon (Business Studies) management studies
PDF
pdfcoffee.com-opt-b1plus-sb-answers.pdfvi
PPTX
New Microsoft PowerPoint Presentation - Copy.pptx
PDF
MSPs in 10 Words - Created by US MSP Network
DOCX
unit 2 cost accounting- Tender and Quotation & Reconciliation Statement
20250805_A. Stotz All Weather Strategy - Performance review July 2025.pdf
CkgxkgxydkydyldylydlydyldlyddolydyoyyU2.pptx
WRN_Investor_Presentation_August 2025.pdf
Probability Distribution, binomial distribution, poisson distribution
Business model innovation report 2022.pdf
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
Deliverable file - Regulatory guideline analysis.pdf
A Brief Introduction About Julia Allison
Reconciliation AND MEMORANDUM RECONCILATION
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
kom-180-proposal-for-a-directive-amending-directive-2014-45-eu-and-directive-...
IFRS Notes in your pocket for study all the time
Euro SEO Services 1st 3 General Updates.docx
Chapter four Project-Preparation material
How to Get Funding for Your Trucking Business
Amazon (Business Studies) management studies
pdfcoffee.com-opt-b1plus-sb-answers.pdfvi
New Microsoft PowerPoint Presentation - Copy.pptx
MSPs in 10 Words - Created by US MSP Network
unit 2 cost accounting- Tender and Quotation & Reconciliation Statement

SharePoint 2013 Search and Creating Dynamic Content Management Solutions

  • 1. SharePoint 2013 Search and Creating Dynamic Content Management Solutions Ryan McIntyre MCITP, MCPD National Architect @ryanmcintyre
  • 2. © Copyright 2014, Neudesic. All rights reserved. • SharePoint 2013 Search Overview • Changes from 2010 • Search Solutions • OOTB Web Parts Review • API • Server side • Client side • Packaging & Deployment Leave Now…Or…
  • 3. © Copyright 2014, Neudesic. All rights reserved. Scenarios
  • 4. © Copyright 2014, Neudesic. All rights reserved. Powerful Engine 2013 Search Intro FAST Index FS4SP 2010 Search 2013 Search
  • 5. © Copyright 2014, Neudesic. All rights reserved. 2013 Search Architecture HTTP File shares SharePoint User profiles Lotus Notes Documentum Exchange folders Custom - BCS SharePoint SP Apps Devices Non-SP UX Public API Unit of scale/role boundary
  • 6. © Copyright 2014, Neudesic. All rights reserved. Core Building Blocks Content Source Search Schema Now available through site administration Query Rule Customization of returned results Captures Intent, composed of Query Condition Query Action Publishing Options
  • 7. © Copyright 2014, Neudesic. All rights reserved. Core Building Blocks Query Transforms Web Parts (3) Query Rule (2) Result Source (1) Result Source Scope + Federated + CSWP
  • 8. © Copyright 2014, Neudesic. All rights reserved. Core Building Blocks Result Type How to display types of results Display Templates CSWP Hover Panel Refiner Search Results
  • 9. © Copyright 2014, Neudesic. All rights reserved. Search Experience
  • 10. © Copyright 2014, Neudesic. All rights reserved. Search in Action Demo
  • 11. © Copyright 2014, Neudesic. All rights reserved. Executing Queries
  • 12. © Copyright 2014, Neudesic. All rights reserved. Executing Queries: KQL
  • 13. © Copyright 2014, Neudesic. All rights reserved.  Keywords  http://server/site/_api/search/query?querytext='{KQL Query}‘  Selecting Properties  http://server/site/_api/search/query?querytext='test'&selectproperties='Title, Rank'  Sorting  http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTi me:descending'  http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTi me:descending,Rank:ascending Executing Queries: REST
  • 14. © Copyright 2014, Neudesic. All rights reserved. Executing Queries: REST <d:RelevantResults m:type="Microsoft.Office.Server.Search.REST.RelevantResults"> <d:RowCount m:type="Edm.Int32">16</d:RowCount> <d:Rows m:type="SP.SimpleDataTable"> <d:Rows> <d:element m:type="SP.SimpleDataRow"> <d:Cells> <d:element m:type="SP.KeyValue"> <d:Key xml:space="preserve">Rank</d:Key> <d:Value xml:space="preserve">29.4688339233398</d:Value> <d:ValueType xml:space="preserve">Edm.Decimal</d:ValueType> </d:element>
  • 15. © Copyright 2014, Neudesic. All rights reserved. Executing Queries: CSOM ClientContext ctx = new ClientContext("http://sharepointonline/site"); var query = new KeywordQuery(ctx, ctx.Site); query.QueryText = "Search terms"; query.ResultTypes = ResultType.RelevantResults; query.Id = Guid.NewGuid(); var queries = new KeywordQuery[1]; queries[0] = query; SearchExecutor searchExecutor = new SearchExecutor(ctx); var rcc = searchExecutor.ExecuteQueries(queries); ctx.ExecuteQuery();
  • 16. © Copyright 2014, Neudesic. All rights reserved. Query Debugging
  • 17. © Copyright 2014, Neudesic. All rights reserved. CSWP & Display Template Deployment
  • 18. © Copyright 2014, Neudesic. All rights reserved. • <cringe>Design in UI</cringe> • Export • Visual Studio solution • Create “host” page • Add markup for CSWP from export • Properly escape ‘{‘, ‘}’, and quotes in DataProviderJSON property CSWP Development & Deployment
  • 19. © Copyright 2014, Neudesic. All rights reserved. • Create HTML file and verify results in UI • Export JS • Visual Studio solution • Include JS • Deploy to “_catalogs/masterpage/Display Templates/Content Web Parts” • {Optionally, deploy HTML (not JS) and programmatically update file post-deployment to generate JS} Display Template Development & Deployment
  • 20. © Copyright 2014, Neudesic. All rights reserved. Deployment Demo
  • 21. © Copyright 2014, Neudesic. All rights reserved. Scenarios
  • 22. © Copyright 2014, Neudesic. All rights reserved. Ryan McIntyre ryan.mcintyre@neudesic.com http://blog.randomdust.com @ryanmcintyre 303-520-6337
  • 23. © Copyright 2014, Neudesic. All rights reserved. • http://sp2013searchtool.codeplex.com/ Resources
  • 24. © Copyright 2014, Neudesic. All rights reserved.
  • 25. © Copyright 2014, Neudesic. All rights reserved.
  • 26. © Copyright 2014, Neudesic. All rights reserved.
  • 27. © Copyright 2014, Neudesic. All rights reserved.
  • 28. © Copyright 2014, Neudesic. All rights reserved.
  • 29. © Copyright 2014, Neudesic. All rights reserved.
  • 30. © Copyright 2014, Neudesic. All rights reserved.
  • 31. © Copyright 2014, Neudesic. All rights reserved.
  • 32. © Copyright 2014, Neudesic. All rights reserved.
  • 33. © Copyright 2014, Neudesic. All rights reserved.
  • 34. © Copyright 2014, Neudesic. All rights reserved.
  • 35. © Copyright 2014, Neudesic. All rights reserved.