Sinds de upgrade van WooCommerce naar versie 2.1.0 maakt het systeem gebruik van ‘endpoints’ in plaats van pagina’s.
Waar je vroeger als developer in het WooCommerce dashboard een pagina kon toewijzen die als bijvoorbeeld de ‘bedankt’ pagina gebruikt kon worden, kan dat nu niet meer. Die pagina’s bestaan niet meer, en als je ze in je WordPress dashboard had aangemaakt, dan worden die niet meer gebruikt.
Volgens de ontwikkelaars van WooCommerce was dit nodig omdat het het risico op storingen drastisch vermindert.
Wat ervoor in de plaats is gekomen is een url als: /checkout/order-received/
Het gedeelte /checkout/ is nog wel een pagina, maar het gedeelte /order-received/ is dus een ‘endpoint’. Die endpoint kun je overigens in het WooCommerce dashboard wel een andere naam geven gelukkig.
Mijn probleem:
Hoe plaats je een trackingcode op een pagina die geen pagina meer is maar een ‘endpoint’?
Zo’n trackingcode is vrij essentieel als je inzicht wilt krijgen in je verkopen, of als je een affiliate programma gebruikt.
De oplossing voor mijn probleem:
Die ‘endpoints’ maken gelukkig gebruik van een template. Die van de bedankt pagina is te vinden op deze locatie: /woocommerce/templates/checkout/thankyou.php
Het is dus nodig om dat bestand aan te passen als je je tracking code of tracking conversie pixel weer werkend wilt krijgen.
Het is niet aan te raden om dit template bestand direct in de plugin bestanden aan te passen, want bij de eerstvolgende update zal die aanpassing weer worden overschreven door de nieuwe standaardbestanden die de plugin installeert.
Een goede oplossing is om dat bestand naar de theme bestanden te kopieren, en het daar aan te passen. Dat bestand wordt niet overschreven door plugin updates, en ook niet door thema updates. Hier meer documentatie over het overschrijven van WooCommerce bestanden.
Als dit teveel moeite is, het is ook mogelijk om aan het functions.php bestand van het theme van een shop een hook toe te voegen, zie hier de documentatie.
Als je dit leest en geen idee hebt van wat WooCommerce is, hier vind je enige uitleg.