If you’re simply interested in providing basic search functionality for visitors of your WordPress site and don’t have a ton of content on your site, you are probably fine sticking with the native search engine. If not, you might want to consider alternative search engines. One to take a closer look at is ElasticSearch. It has much richer features. Even better, the developers of 10Up have created ElasticPress. This is a WordPress plugin you can use to install the search engine on your site. So, in this post, we are going to talk about Installing Elasticsearch on WordPress.
ElasticSearch: A Brief Summary
ElasticSearch is built as a search engine utility. However, it’s functionality goes a bit deeper than that. Essential it is a database server that collects data from various sources, and then ‘massages’ that information in order to make natural language searches more effective and efficient.
This is important when compared to WordPress. While their native search tool can get bogged down when it has to work with large data sets, ElasticSearch is designed for just that. WordPress native search is also limited to post content and titles. Taxonomies and categories are left out of the equation. It is also missing a fuzzy search feature. Elasticsearch has both of these taken care of.
“It works using Lucene which is an enormously complicated library that only advanced coders are capable of dealing with,” explains Leonardo Lynn, a web developer at BestWritersCanada. “Instead, ElasticSearch works as a go-between. The developers of ElasticSearch have dealt with all the complexities, you simply have to install and configure it.”
Installing and Configuring ElasticPress
WordPress was developed to provide people with a quick path to launching blogs and websites for business and personal use. Plugins play a large part in this. As a result, the best way to implement ElasticSearch on your WordPress site is to install the ElasticPress PlugIn.
You can begin this process in one of two ways. The first is to go into the administrative dashboard of your WordPress website. From there, you can install the plugin just like you would any other plugin available via WordPress. Another option is to go to the Github website. You can search the sight for ElasticPress and find a zip file to download. Once you have done that, you will take the update plugin option in order to upload it.
The next step is to activate the plugin. If you have multiple sites where you plan to offer ElasticSearch, you will need to use the network to activate the option.
Connecting Your WP Site with ElasticPress
In order to use ElasticPress, you have to have an account set up at ElasticPress.IO. When you do this, you will receive some lines of code via email. You will need to add these to your WP-Settings.PHP file. This is the point where you will see ElasticPress available on your dashboard.
Getting Your Content Indexed
“Just like any other search engine, ElasticPress needs to index the information on your WordPress site,” states Asma Rhodes, an SEO specialist at GetGoodGrade.com. Without indexing, searches would be impossibly slow and inaccurate. In addition to indexing your site initially, there will be times when reindexing is appropriate.
When you first install it, syncing is quite easy. You will see a message letting you know that you need to complete sync to get the plugin working. Just click on the underlined word ‘sync’ to start the process. If you want to reindex, later on, go to the ElasticPress settings page. You can just click on the circular arrows to tell the plugin to sync your content and data again.
Command Line Indexing
If you have a very large amount of data or there are other complexities involved, you might wish to use command line indexing (CLI). You can use the WordPress command-line interface that is available to you. You can use the index command to begin the indexing process. To index multiple sites, append that command with -Network-wide. If you have not used the command line interface, you can find more information on it here.
Setting up The Debugging Process
Once your site has been indexed, search requests will immediately start going to ElasticPress.IO. This is the point where you will begin to see better and faster search results. If you would like to learn more about how this process works, or need to do a bit of troubleshooting, consider installing the Debug ElasticPress plugin.
If you are a confident developer head over to Github. “ElasticPress has many features available that are not supported by the core WordPress product. For instance, you can use the product to allow queries across multiple websites. The ElasticPress Github page is a great place to get started exploring these advanced features,” Tobias Vinson, Senior Web Architect for Best Essay Writing Service Canada.
Because ElasticPress is open source, you are free to look around the products code base. Plenty of people have made customizations to the product. You may benefit from what others have done to modify the weighting schemes or adding customized filters. If you don’t find what meets your needs, you can use the code you find as a source of inspiration.
For most people, the WordPress plugin mentioned above is the best option. However, it is not your only option. You can download the ElasticSearch product here and install it on your server by clicking on the .bat file. This is found in the bin folder, ./elasticsearch. This will get ElasticSearch up and running.
Next, go to your internet browser and go to localhost:9002. The screen you see is proof that the ElasticSearch server is up and running. Next, you need to integrate your WordPress site with ElasticSearch. There are multiple options for this. One is to host this application on OpenShift.
If you have a Github account, setting up an OpenShift account is very easy. Once that is done, you can go through the steps to create a new application on OpenShift. The easiest option is to simply install the ElasticSearch app by using the one-click installation method.
Once ElasticSearch has been installed, you will be taken to a configuration screen. This is where you can customize how ElasticSearch will run on the host. The next step is to find and install the Fantastic ElasticSearch plugin. This plugin is more advanced than ElasticPress and is intended for users who have a strong understanding of the ElasticSearch engine. Once you get this product installed, configured, and activated, your user’s search queries will be routed through the ElasticSearch utility. You can use Fantastic ElasticSearch to control options such as field mapping, index management, and results scoring. With a bit of testing and tweaking, you will soon have the product working the way you need.
If you aren’t satisfied with WordPress’ core search capabilities, ElasticSearch is an option that has been widely tested and has been used by many other WordPress users. This includes blogs, personal and business websites, and e-commerce. The instructions above should
provide you all of the information that you need to install and configure this tool whether you are a beginner or advanced developer. Because ElasticSearch is an open-source product, there are tons of mods to look into. Even better, community support for this product is very extensive. If you have questions or need help, you will likely find plenty of people willing to provide you with some guidance.
2 Replies to “Installing and Configuring Elasticsearch on WordPress”
Thanks for sharing this Robin, definitely interested in trying this search over the WordPress default.
Hey Robin Khokhar,
Thank you for sharing about Elasticsearch on WordPress. It an open-source full-text search engine. It is used to index data and searches that data incredibly quickly. It is very nice to write about it…