Slide 1

Slide 1 text

Advanced Search in Sitecore using Solr Sitecore User Group Meetup November 2016, Copenhagen

Slide 2

Slide 2 text

Or the story about … … how you can leverage the ContentSearch API to create a more generic, configurable way, of working with search queries in Sitecore

Slide 3

Slide 3 text

I’m working as a System Consultant at Pentia A/S in Copenhagen. Currently I'm developing a lot of different solutions using .NET, ASP.NET and Sitecore. Twitter: @soren_engel Blog: soen.ghost.io

Slide 4

Slide 4 text

The journey | How we normally use the ContentSearch API | The (hidden) problems that comes along | Towards a solution | Next steps | I’ll do my best to answer your questions!

Slide 5

Slide 5 text

How we normally use the ContentSearch API

Slide 6

Slide 6 text

Let’s look at an example Step 1 Figure out what you should query Step 2 Create your custom search query logic Step 3 Present search results to the user

Slide 7

Slide 7 text

The (hidden) problems that comes along…

Slide 8

Slide 8 text

| The query only exists in code | Changes to the search query requires two things A developer A deploy | Time to market is slowed down | Cost (even small changes can be expensive) | Difficult to personalize search queries Yes, there are some issues…

Slide 9

Slide 9 text

Towards a solution

Slide 10

Slide 10 text

| Goals | Rethinking the concept | Making an architecture that supports the goals | Looking at the solution (code) so far (includes a demo) The steps towards a solution…

Slide 11

Slide 11 text

Goals

Slide 12

Slide 12 text

| Enable search query configuration without code changes | Allow specifying nested search query structures for complex queries | Allow a search query to either react to values provided dynamically, or by using preset default values | Use the ContentSearch API as the underlying interface for querying search results | Make it possible to vary search queries based on personalization | Enable extensibility What should the goals be?

Slide 13

Slide 13 text

Thinking about the concept … “Configurable Search”

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

Making an architecture that supports the goals

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

Looking at the solution, the code, and a demo

Slide 18

Slide 18 text

Next steps

Slide 19

Slide 19 text

| Finalizing the configuration from within Sitecore | Add unit tests | Write documentation | Add new features: Paging, Sorting, Facets, and so on | Conjunction will be open sourced on GitHub! | Follow along my blog for more details on the API, and be sure to give me feedback So, what’s coming up?

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

Pentia A/S Zeppelinerhallen Islands Brygge 55 2300 København S CVR 20 86 88 72 T +45 33 74 33 94 E [email protected]