Your searchbox doesn’t need to be hidden in a corner. Put it in focus and allow people to quickly go where they can find the information they need. In this talk you learn how Neos allows you to offer autocompletion, suggestions and direct navigation to results while entering a searchterm.
This talk shows you all the building blocks to integrate a powerful search with Neos.
25. Elasticsearch
Elasticsearch is an open source, distributed, scalable,
document-oriented, RESTful, full text search engine
with real-time search an analytics capabilities.
Based on Apache Lucene. Combines search and
powerful analytics.
Provides a HTTP REST and a Java interface.
35. Basic Index Configuration
• Configuration provider
• Neos CR Search package
• Elasticsearch CR Adaptor
• Flowpack Searchplugin
• Many use cases don’t need extra configuration
36. Node Types
• Package stack already provides many defaults
• Custom configurations can be added or extended
• Best practice
• Use mixins for common configurations
42. Indexing Assets
bin/plugin install elasticsearch/elasticsearch-mapper-attachments/2.1.7
• Requires the attachment type for Elasticsearch
• Included for Elasticsearch > 2.1
• For 1.7 you need to install the plugin separately
55. Autocompletion
• Offers possible word & phrase completions (like google)
• Helps when you’re unsure about spelling
• Very fast
• No correction
• Currently missing
• Doesn’t respect context (e.g. dimensions)
• No weighting
56. Suggestions
• Fuzzy search
• Respects search context (dimensions, workspaces, starting point)
• Slower if context is not cached (Solved in Searchplugin)
• Weighting
• Show alternative results
• Customizable payload during index time
• Type based suggestions
• Pre rendered output
• Direct linking
58. The future
• Elasticsearch 5.x driver
• Support multiple indices (e.g. multi-site installations)
• Better support for language specialities
• Indexqueue
• Improved documentation and example library
59. I also want to have a cool search
• Checkout the Flowpack/Searchplugin package
• Post feedback & ideas
• on Github
• the guild-search Slack channel
• Use the SEO package and index metadata
• Treat internal search like external search (index property)