Elasticsearch voor WordPress – een ElasticPress tutorial

Gijs Hovens, 17 januari 2019

Elasticsearch is een zoektechnologie die zoekopdrachten supersnel afhandelt en enorm goed de meest relevante resultaten bepaalt. Met het Elasticsearch pakket van Savvii voorzie je je website van de kracht van Elasticsearch.

ElasticSearch logo

Gaat Elasticsearch jouw WordPress site verbeteren?

Een Elasticsearch integratie verbetert méér dan alleen de zoekfunctionaliteit van jouw website. Het versnelt de zoekfunctionaliteit van je website, zorgt voor relevantere resulaten én verbetert jouw website overal waar WP_Query gebruikt wordt in de code. Zelfs als je niet eens een zoekbox in je front-end  gebruikt, staat op veel plekken de WP_Query functie.

Categorie en tagpagina’s, archiefpagina’s, bericht- en overzichtspagina’s in je wp-admin of custom taxonomieën: Elasticsearch versnelt het allemaal. Als je bijvoorbeeld last hebt van een trage backend helpt Elasticsearch hierdoor ook.

Stel jezelf de volgende vragen om te bepalen of Elasticsearch iets voor jouw WordPress site is:

Hoe navigeren mijn bezoekers door mijn website?

Bekijk een webanalysepakket zoals Google Analytics of de heatmaps van bijvoorbeeld HotJar om te zien hoe bezoekers door je site navigeren. Gebruiken ze de zoekfunctie? Gebruiken ze filters? Navigeren ze via categorie-, tag-, auteur- of archiefpagina’s? Sorteren ze lijsten met items of producten? Al deze zaken gebruiken de WP_Query functie en worden versneld en verbeterd met een ElasticSeach integratie.

Uit onderzoek van het Zweedse conversieoptimalisatie bureau Conversionista blijkt dat site searchers 90% meer converteren dan niet site searchers.

Het meten en verbeteren van je zoekfunctionaliteit moet een absolute prioriteit zijn als je ziet dat de zoekfunctie veel gebruikt wordt. Zeker wanneer je een e-commerceoplossing zoals WooCommerce gebruikt.

Wat zijn de traagste pagina’s binnen mijn WordPress site?

In het paginatiming rapport van Google Analytics zie je welke pagina’s traag zijn en welke snel. Wanneer je onder de lijst van trage pagina’s de zoekresultaten, categorie, tag, auteur en archief pagina’s terugkomen, dan wordt je website veel sneller door Elasticsearch te integreren.

Dat langzame pagina’s echte conversiekillers zijn is gebleken uit onderzoek van onder andere Akamai.

A 100-millisecond delay in website load time can hurt conversion rates by 7 percent

Ervaar ik een trage WP-admin?

Hier heb je geen analytics voor nodig. Je weet zelf heel goed of werken in je wp-admin frustrerend is door traag ladende pagina’s of het langzame zoeken naar berichten of WooCommerce orders. Vooral het zoeken naar orders, pagina’s en berichten én de overview pagina’s van berichten, pagina’s en producten worden een stuk sneller met Elasticsearch.

Komt uit bovenstaande vragen naar voren dat je je zoekfunctionaliteit moet verbeteren? Volg dan onze Elasticsearch met ElasticPress tutorial en verbeter de conversie van jouw WordPress site.

Tutorial

Stap 1: Zorg dat je een Elasticsearch host hebt

We gaan ervan uit dat je al een WordPress site hebt. Naast de hosting voor je WordPress en je site zelf heb je ook een Elasticsearch applicatie nodig die ergens wordt gehost. Het is mogelijk om zelf Elasticsearch op een VPS te installeren en te onderhouden. Focus je je liever op je website zelf? Dan raden wij je aan een Elasticsearch pakket bij Savvii te bestellen (onze scherpe prijzen zijn exclusief voor Savvii-klanten).

Stap 2: Installeer de ElasticPress plugin

De beste manier om je WordPress site aan je Elasticsearch host te koppelen, is door de WordPress plugin ElasticPress van het bedrijf 10up. 10up levert niet alleen deze plugin, ook de Elasticsearch hosts van Savvii worden geleverd door 10up.

De ElasticPress plugin is gratis verkrijgbaar vanuit de wordpress.org repository óf direct vanuit de github repository.

ElasticPress logo

Stap 3: Configureer de ElasticPress plugin

De eerste stap is het invullen van je Elasticsearch host in de plugin. De plugin herkent de host (als endpoint in de plugin) van ElasticPress en Savvii meteen. Je wordt dan gevraagd naar:

  • Subscription ID
  • Subscription Username
  • Token

Deze gegevens vind je terug in je ElasticPress account onder ‘My Subscription’. Heb je een Elastic pakket bij Savvii? Dan hebben wij ze al voor je ingevuld.

Nadat je alle credentials hebt ingevuld druk je op ‘Save Changes’.

De volgende stap is het synchroniseren van al je content met de ElasticPress host. Klik daarvoor op het ‘sync’ icoontje rechtsboven in de plugin.

Ga nu naar de instellingen pagina van de ElasticPress plugin.

elasticpress configuration

ElasticPress Configuratie

Search

Deze wil je natuurlijk ‘enabled’ zetten, anders wordt Elasticsearch niet ingezet voor jouw site. De tweede setting hier geeft je de mogelijkheid om recentere content zwaarder te wegen in de zoekresultaten. Het ligt aan jouw content of dit verstandig is.

Protected Content

Om vollledig te profiteren van Elasticsearch raden we je aan deze op ‘enabled’ te zetten. Zo vind je ook concept en privé content sneller terug in je wp-admin. Zorg wel dat je host niet publiek toegankelijk is als je deze setting op enabled zet. Bij Savvii en ElasticPress hosts hoef je je hier geen zorgen over te maken.

Documents

Hiermee wordt ook de inhoud van ppt, pptx, doc, docx, xls, xlsx en pdf-bestanden geindexeerd. Deze moeten wel via WordPress geüploaded zijn naar je media library. ElasticPress scant geen mapjes op je server. Bedenk of je deze wilt indexeren of dat je alleen de berichten die naar deze bestanden linken wil indexeren.

Facets

Facets zijn filters. Deze filters worden toegepast op je content (niet op je producten, kijk daarvoor bij WooCommerce). Met deze optie wordt het voor bezoekers mogelijk je site te filteren op bepaalde taxonomieën. Taxonomieën zijn bijvoorbeeld een categorie of een tag. Je kunt zelf ook nieuwe taxonomieën toevoegen.

Je kiest ook of je resultaten wil laten zien die aan één van de gekozen voorwaarden voldoen of alleen resultaten die aan álle voorwaarden voldoen.

Nadat je facets aan hebt gezet moet je deze nog toevoegen aan je website via een widget. Widgets vindt je terug onder ‘Weergave’ > ‘Widgets’.

Related Posts

Een andere extra functionaliteit die je met ElasticPress aan je website toevoegt zijn ‘Related Posts’. Er zijn meerdere plugins die dit doen, maar die maken je site vaak erg traag. Dat is niet het geval met de ElasticPress related posts. Ook deze moet je aanzetten en daarna via een widget aan je website toevoegen.

WooCommerce

Deze optie is alleen beschikbaar als jouw WordPress website een actieve WooCommerce plugin heeft. Deze optie is eigenlijk hetzelfde als facets, maar dan voor producten.

Je kent het wel van grote webshops als Zalando waar je kunt filteren op prijscategorieën, beoordelingen, kleur, materiaal, en meer. Deze opties is dus perfect voor webshops! Naast het aan- en uitzetten van facets kies je hier of de selectie aan alle aangevinkte filters moet voldoen. Bijvoorbeeld ’50-100 euro’ én ‘5-sterren rating’ of aan één van de filters (bijvoorbeeld ’50-100 euro’ óf ‘5-sterren rating’).

Deze optie hoef je alleen maar aan te zetten en niet via widgets toe te voegen.

Facets bij Amazon

Facets bij Amazon

Autosuggest

Wij raden deze optie zeker aan. Door Autosuggest krijgen jouw bezoekers al suggesties voor content tijdens het typen van hun zoekopdracht. Dat scheelt vaak het doorklikken naar de zoekresultatenpagina. Hiermee vinden jouw bezoekers sneller wat ze zoeken en dat draagt weer bij tot een verbeterde conversie op je website!

Stap 4: Test je implementatie

Ga nadat je ElasticPress hebt ingesteld naar de front-end van je website. Uiteraard controleer je hier of de ingestelde facets, related posts en Autosuggest zichtbaar zijn. Het is goed om nog twee andere zaken te controleren: de headers van je zoekresultaten pagina en de console voor je zoekresultaten pagina. Beide zaken controleer je met de developer tools van je browser.

Headers

Als ElasticPress goed werkt zie je de header:

x-elasticpress-search: true

in de response header van je zoekresultaten pagina. Check ook de console voor eventuele error messages.

Debugging

Zie je niks terug in de headers en de console en werkt ElasticPress nog steeds niet zoals je verwacht? Doe dan eerst een nieuwe synchronisatie en test opnieuw.

Werkt het nog steeds niet? Dan ga je aan de slag met de WordPress debug bar met de ElasticPress debug bar add-on of neem je contact op met ElasticPress support. Heb je het Savvii Elastic pakket? Dan neem je contact op met Savvii support.

Ook je site versnellen?

Bestel een Savvii Elasticsearch pakket! Heb je al elders een Elasticsearch pakket? Lees dan onze ultieme checklist om je WordPress website nog meer te versnellen.

Reageer