Gigaom’s Blazing Fast WordPress Search is Enhanced by Sphinx and Scriblio

Gigaom has been pumping out a steady stream of news and analysis on technology since 2006. The WordPress-powered site attracts 6.5 million monthly unique visitors with topics ranging from science and energy to cloud businesses, media and mobile.

With years of articles buried in its archives, it’s important for Gigaom to have a solid search experience. The site’s engineering team, led by Casey Bisson, opted to utilize Sphinx in order to improve upon WordPress’ native searching capabilities.

The result is a super fast dedicated search page at search.gigaom.com that features the ability to further narrow results based on available terms.

gigaom-search

The advanced search feature was built using a combination of several open source plugins built by Bisson. These plugins integrate Sphinx and taxonomy filtering to help users more easily explore Gigaom’s wealth of content. All the tools are open source and were contributed back to the community for anyone to use.

What is Sphinx?

Sphinx is a GPL-licensed full text search server that was created to be highly performant while returning the most relevant results. In order to integrate it with WordPress, Bisson developed Gigaom Sphinx. The plugin pulls WordPress posts into Sphinx and then queries them using the standard WP_Query class.

Gigaom Sphinx requires that you first install Sphinx and then set it up with the sample config file, which includes parameters to index the site’s content. Once the site is fully indexed in Sphinx, WordPress query performance will be greatly improved.

sphinx-config

Scriblio

In order to further filter results, Gigaom uses Scriblio, a plugin that provides faceted searching and browsing of WordPress posts, pages, and custom post types. This enables users to further narrow down results based on taxonomies and their available terms. The facets are easily added via configurable widgets, which you can include on your site’s search, tag and category archives, and other archive pages.

Search results can be filtered using multiple terms. This allows visitors to quickly nail down the most relevant content.

example-search

The facets can be displayed as either tag clouds or lists, as shown above. Scriblio’s search editor widget will show the selected search terms and allows the user to easily add or remove terms while automatically updating results.

The plugin also includes live search suggestions as you type. These recommendations are based on all available taxonomies as well as post titles.

bCMS

The last plugin required to create Gigaom’s unique search experience is bCMS, which was also developed by Bisson. It enhances WordPress’ CMS capabilities in a number of ways and includes a setting to enable full text keyword indexing.

For a full rundown of Gigaom’s searching capabilities, check out the FAQ item devoted to search. Thanks to Bisson and the Gigaom team, these tools are available for any WordPress site administrator to use. If you need more fine-grained sorting capabilities for search results, the combination of Gigaom Sphinx, Scriblio and bCMS is a solid option.

7

7 responses to “Gigaom’s Blazing Fast WordPress Search is Enhanced by Sphinx and Scriblio”

  1. Nice article :)

    Bryan: Gigaom seems to be a pretty big site. They have ~6.5 million unique views per month, but I’m not sure how many documents they have indexed– I bet there are a lot.

    And, I wrote about installing these plugins and about how to build Sphinx indexes using the sample configuration file here: http://sphinxsearch.com/blog/2014/11/12/gigaom-wordpress-plugins-and-sphinx-search/

    It might be helpful.

  2. Bryan, you do not need to “change search” in production and risk your site’s availability while it’s indexing.

    This has to be tested in the non-prod environment first. Make a copy of your site with all files (can skip copying the thumbnail images – just regenerate them after), and test how it goes with indexing. Only after ironing out the details you might plan to do a roll-over of the new search into the production server. May be do a staged approach, like import the already generated index from the test into prod, to avoid long time to reindex again…

    Anyhow this sounds like a big fun project!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Newsletter

Subscribe Via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Discover more from WP Tavern

Subscribe now to keep reading and get access to the full archive.

Continue reading