Meet ElasticPress
We are proud to announce the release of a new plugin, ElasticPress, to the WordPress community. The project started as an internal initiative to meet a particularly common yet difficult client request: improved WordPress search.
ElasticPress integrates WordPress search with Elasticsearch which has become increasingly prominent powering search on major enterprise websites such as Github and WordPress.com. Elasticsearch is a scalable, peformant, and open source standalone search server based on a technology from Apache called Lucene. Besides being fast and scalable, Elasticsearch can do things like relevant results, autosuggest, geographic search, fuzzy matching, data weighting, and more.
ElasticPress ties your Elasticsearch instance to WordPress. It is a lightweight plugin that overrides the WP_Query
object to return posts from Elasticsearch instead of MySQL. There are a number of special WP_Query parameters that the plugin supports to do things like meta, taxonomy, and author searches. ElasticPress can also handle cross-blog search on WordPress multi-site installations.
Full documentation and usage instructions for the plugin are on Github. ElasticPress requires WP-CLI as it is preferable to handle things like bulk indexing through PHP CLI.
Please reach out on Github with any questions. We are happy to help and greatly appreciate contributions.
Comments
Leo Gopal on
I have been waiting for something simple, lightweight, effective and reliable for WP Search for ages. You guys rock!
Its based on a technology from Apache called Lucene, will this work on an NGinX environment like WPEngine?
Eternal Smiles,
Leo Gopal
Aaron Holbrook on
Hi Leo,
This plugin requires you to setup and maintain your own Elasticsearch server – however, that can be anywhere (you could even host it on a small VM like Digital Ocean or Linode).
Since the plugin is (currently) entirely built in PHP, it will have no problems running on WP Engine or any other host. All that you’ll need to do initially after you’ve set up your Elasticsearch server is to request WP Engine to run the WP CLI command for you to sync all your content over to the Elasticsearch server.
We have much more in depth instructions over at Github: https://github.com/10up/ElasticPress.
Good luck!
Aaron
Peter Sorensen on
Also been waiting for something like this. Super excited to dig in. Big thanks!
Chris Stark on
Is there any dashboard in the works for this possibly or is it all CLI for the forseeable future? It would be great to see trends on what people are searching for.
Mike on
Thank you so much for this awesome software. I made a tutorial for installing Elasticsearch and configuring it for ElasticPress. hopefully it helps some people get started :) https://guides.wp-bullet.com/install-configure-elasticsearch-to-speed-up-wordpress-search/