Better Drupal Ecommerce Search with Apache Solr

Better Drupal Ecommerce Search with Apache Solr

Drupal’s core search module is pretty good for a simple website, but when it comes to ecommerce, it just doesn’t cut it. The solution we use around here is Apache Solr, an open-source search platform packed full of customizable features. It gets your customers to the right products, quickly and easily.

Drupal Core — Why does it fail?

Drupal’s core search is really only good for small, text content based websites. Anything more and it’s pitfalls start to become noticeable.

How the core search indexes a website is pretty basic — it assigns an importance value to content titles based on the HTML heading tag (H1, H2, etc. - H1 being the most important), then it filters through the text of content to try and match keywords. It’s smart in that it will try to fix simple misspellings, such as removing letter accents (i.e. Québec City > Quebec City), but that’s about it.

These basic filtering techniques start to fall apart when unique, customized content is added. Take an ecommerce website for instance, if your website sells clothing you most likely have a variety of clothing styles — t-shirts, hats, shoes, etc. Each article of clothing is priced differently, and probably has options such as size, colour, material, etc. There’s no way the core Drupal search is going to be able to break out or filter this information in a way that’s useful.

Apache Solr — Everything core, and way more

Apache Solr (pronounced "solar") is a HUGE improvement over the core search module. You can take a look at the official full features list for more details, but here’s a quick breakdown:

Features:

  • Open source
    No cost to use or modify on any site.
  • Advanced full-text search
    Much smarter than default by recognizing phrases, wildcards, word groupings, etc.
  • Real-time help
    As you type, query suggestions, auto-completion, spell checking, and more dynamically narrow down results before you even hit search.
  • Near real-time indexing
    Makes new content searchable quickly with little delay.
  • Easily customizable
    A nice administration interface helps you set faceted search parameters and filters for any data type (colours, price ranges, categories, A-Z, etc.).
  • Highly configurable
    Setup multiple search configurations for different use-cases. You’re not limited to one search for all.
  • Geospatial searching
    Makes location-based search and results possible.
  • Scaleable with fast results
    From small to massive. Apache Solr is extremely fast in both cases.
  • Performance optimization
    Caching of search queries, filters, etc. to optimize performance and save user's search options.
  • Monitorable logging
    Search result monitoring and logging to provide insight into user search habits.
  • Common data types
    Supports JSON, CSV, XML and other common data types, no conversions needed.
  • Extendable
    Plugins further enhance Apache Solr for indexings rich content (i.e. PDFs, Word docs), language detections, result clustering, and more.

As you can see, Apache Solr rocks! It’s fully featured and powerful. Having these options at our fingertips lets us fine-tune how ecommerce stores are searchable, getting your customers to the right products quickly and easily, increasing sales. Good filtering options also create an overall better experience for your website visitors, making it more likely that customer would come back.

Apache Solr in action!

Soilmate — https://www.soilmate.com/soil-mate-search

Spark Ontario — http://www.findmyspark.ca/

Does your ecommerce site take advantage of good search and filtering techniques? If not, you might be missing out on some serious profit. We have a tonne of experience building ecommerce websites and would love to share that experience with you. Contact us if you’d like to talk!

Mike Hubbard
Contributed by

Mike Hubbard

, Frontend Developer
Up Next:

4 Reasons Multi-Language Support Rocks in Drupal 8

Next Article
Get Free Widget

Fields marked with * are required.

×