WHAT DOES IT DO…
Elasticsearch is a full-text search and analytics engine used to provide real-time search results on their site. It has the ability to search results to the search query much faster than PostgreSQL database on the basis of the index. Odoo Smart Search using Elasticsearch helps your Odoo website to efficiently scan through the nook and corners to return results in a fraction of time.
Configure Elasticsearch in Odoo website and have your own search wizard to show results faster on Odoo website using Elasticsearch. Enable auto-completion, suggestions, recent searches and trending searches in the search bar on the Odoo website. Define the data fields to import from Odoo server to Elasticsearch server. Also, retrieve product mapping history for debugging purpose.
- Lightning fast results to the search query entered on the Odoo website using Elasticsearch irrespective of the number of products on your website.
- The admin can also map most trending searches with the search results from the Odoo backend which will then be displayed in the search hover-over box at the time of typing the search query.
- Auto-completion feature as the query is being entered. The search engine matches the syllables to the words in the index to provide auto-completed suggestions to the customers.
- Similarly, recent searches can be enabled by the admin so they are displayed in the hover over search box.
- Typing suggestions for the customers in real time for their query being entered.
- Facilitates the Cron scheduler to be set to automatically update the index from time to time for new products added on the website.
- The admin can choose and enter the fields he wishes to be indexed by the Elasticsearch engine and can also set their values.
- It also allows adding the filter to the results shown on the website for any entered query. For example, say hide the products that are ‘Out of Stock’ from the results.
- The hover Box can also be customized by the admin from the back-end to include/ exclude the details like product stock, description etc.
- The mapping history of all the products is available on the Odoo backend for any purpose like debugging.
HOW TO INSTALL THE MODULE
Once you purchase the App from Webkul’s store, you will receive the link to download the zip file of the module.
1.) Extract the file on your system after the download finishes. You will be able to see a folder named- ‘odoo_elasticsearch’.
2.) Copy and paste this folder inside your Odoo add-ons path.
3.) Now, open the Odoo App and click on the Settings menu. Here, click on Activate the Developer Mode.
4.) Then, open on Apps menu and click on ‘Update Modules List’.
5.) In the search bar, remove all the filters and search ‘odoo_elasticsearch’.
6.) You will be able to see the module in the search result. Click on ‘Install’ to install it.
WORKING WITH IT…
It is time to configure the Elasticsearch for your Odoo website.
Configure the Elasticsearch for indexing the fields
1.) Open your Odoo interface. A new menu- ‘Elastic Search’ is visible at the top of the page.
2.) Here, click on the submenu- ‘Elastic Index Mapping’. Now, click on Product template to configure the indexing setting for Elastic search.
3.) Select ‘Product Template’ in the filed- Model Name. The Elastic search would then pick up the indexing data from the product templates.
4.) Now, set the domain for the indexing to determine the fields from where the indexing data is gathered.
5.) Under the tab field details, click on ‘Add an item’ to add the field to be indexed in the Elasticsearch database
6.) You can select various fields of a product to be mapped such as name, visible, internal reference, sale description etc. Then select the relevant field type for the model field selected.
7.) Click Save. Then click on ‘Create Mapping’ to create indexes in the Elasticsearch database.
Customize Elastic Server index for the Odoo Website
You can now define and customize various settings for the Elasticsearch
8.) Click on Elastic Settings under Configuration. Then, hit on Create.
9.) Enter the name of the settings. Say, default settings.
10.) Next, under Website settings tab, click on the checkbox ‘Enable Product Suggestion to show product suggestions on the website when the visitor enters the search query.
11.) Select the Product Index as Product template so the elastic sever can pick the data from product template index to show suggestions.
12.) You can also select to show product thumbnail and description for the suggestions and also decide the number of suggestions that would appear in the hover box.
Enable trending Search
13.) Before enabling Trending Search, you would need to configure the Cron settings. Click on Cron Settings tab.
14.) Select the Cron you want to use to auto-update the index.
15.) Select the Next Execution Date to start the Cron automatically at the date.
16.) Enter the Interval Number to define the interval between automatic Cron update. and Done.
17.) Now, go to the Website Settings tab, and click on Create Index next to ‘Enable Trending keywords in the website’ tab.
18.) Once done, click on enable and a new tab- Trending search’ is now visible. Click on it.
19.) You can add the items manually to the trending list or import the searches from the elastic server database.
Customize the Search Hover Box
20.) Click on Advanced Settings tab to configure the appearance of the hover Box on the website.
21.) You can edit different settings like the size of the hover box, color for the description of products, hover box background color and color of the product name.
Let’s use Elasticsearch on Odoo website to show Fast results on Odoo website.
22.) Go to the Website Shop. In the search bar, start typing the search query. You will be able to see the suggestions and trending searches in the hover box as you type your query.
Was this article helpful? Please share your feedback in the comments below.
If you have any issues/queries regarding the module please raise a ticket at
For any doubt contact us at email@example.com.
Thanks for reading!!
Current Product Version - 1.0.0
Supported Framework Version - Odoo V10, V11