Jump to content

ElasticsearchFeeder


markus_blue_tomato
 Share

Recommended Posts

ElasticsearchFeeder

This ElasticSearch module for ProcessWire will sync your page content to an ElasticSearch index, which provides you a convenient way to search it.

Thanks to @jonathan-dart who created the first ES Module for PW and which influenced us a lot. Our approach was to create an a module where we can make for each template a flexible schema. You can define on you own which data ind which format should be transfered to ElasticSearch.

 

Github Page: https://github.com/blue-tomato/ElasticsearchFeeder

Module Page: https://modules.processwire.com/modules/elasticsearch-feeder/

  • Like 13
Link to comment
Share on other sites

12 hours ago, bernhard said:

Hi @tiefenbacher_bluetomato, thx for sharing!

Do you have a demo for us where we can see it in action? 🙂

Not now but soon. We are developing around our ElasticSearch Instance a GraphQL Service and will than show Content from our Blog etc. in other heavy traffic section on https://www.blue-tomato.com

When it is live I will post it here

  • Like 2
Link to comment
Share on other sites

  • 4 months later...

I forgot to write some update here.

We made some minor and one major release since 1.0.0 with this changes:

  • fix some log warnings from some Repeater fields
  • Module can now be installed via composer
  • Add support for $config->elasticsearchFeederConnectionOverride
  • Better support of own hosted ElasticSearch Servers
  • Use of PW 3.0.133's new $page->meta() feature instead of creating a fields for indexed pages
  • CI Tests via circleci.com and peridot-php

Current Version is 1.2.0 and since we use $page-meta() the module requires now PW 3.0.133

And a live production demo will follow the next 1-2 weeks.

 

  • Like 4
Link to comment
Share on other sites

Here now some details how we use ElasticsearchFeeder on www.blue-tomato.com:

Our main webshop technology is Java / SAP Hybris which is mostly developed by an external developer team. Hybris is good for multichannel webshops but not the best tool for general content management or for creating quick new content. So we use ProcessWire for our editoral content like blogs, landing pages, buyers guides etc. since 2 years. We created a RestAPI where SAP Hybris gets the content from ProcessWire. So ProcessWire prerenders the main-body and gives it with some metadata to Hybris which puts them between the webshop header and footer.

This works great with following page sections:

Since this are kind of static pages it worked very well but we want to integrate also our content dynamicly on other high traffic pages like the homepage or product detail pages. This is why we decided to put our content into ElasticSearch. In front of ElasticSearch we created an GraphQL / Node.js Server, because we mashup our ProcessWire data with product data from other (REST) sources.

For the first step we created two kind of widgets, which run on the Blue Tomato Homepage:

  • Blue World News (latest news from our blog)
  • Shop The Look

The Shop The Look Widget is our first try to mix and show data from different sources. The Editor of a "Look" has to create the look in the ProcessWire Admin panel. He uploads the look photo and has to put product IDs into a Table. No product price, title or image. All of the product data will be fetched by GraphQL from our other database during the request. All widgets are rendered with React.

1416878119_Bildschirmfoto2019-06-19um22_23_11.thumb.png.0028ac16a1386f12421fd7d4671a8f12.png

1310604572_Bildschirmfoto2019-06-19um22_23_23.thumb.png.5b6e10ace963f8d15f76e504dc60739d.png

I hope I could give you a short overview of what we do with ProcessWire and ElasticsearchFeeder.

 

  • Like 6
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...