Knop Winkelwagen legen — Complete handleiding
De knop "Winkelwagen legen" op de winkelwagenpagina installeren, configureren en gebruiken voor PrestaShop 8 en 9.
Presentatie
De module Knop Winkelwagen legen (dfclearcart) voegt op de winkelwagenpagina van uw winkel een knop “Winkelwagen legen” toe die met één klik de volledige winkelwagen wist: alle producten, hun varianten en personalisaties, en de toegepaste kortingsbonnen. De module is volledig zelfstandig: geen Composer-afhankelijkheden, geen toegevoegde SQL-tabel.
De knop wordt via JavaScript geïnjecteerd via een altijd aanwezige hook en vervolgens in het winkelwagenblok geplaatst. Hij verschijnt dus ook op aangepaste thema’s die de gebruikelijke weergavehooks van de winkelwagenpagina niet triggeren.
Compatibiliteit
- PrestaShop 8.0 tot 9.x
- Single- en multistore
- 5 talen: FR, EN, ES, DE, IT
- Classic-thema en aangepaste thema’s
- Geen afhankelijkheden (geen Composer, geen framework)
Installatie
- Open in de backoffice Modules > Modulebeheer.
- Klik op Een module uploaden en selecteer het bestand
dfclearcart.zip. - Klik na de installatie op Configureren.
Bij de installatie registreert de module haar hooks (laden van de resources in de frontoffice en knop op de winkelwagenpagina) en maakt haar standaardinstellingen aan: knop ingeschakeld, bevestiging ingeschakeld, labels in de vijf talen.
Configuratie
- Knop inschakelen: toont of verbergt de knop “Winkelwagen legen” op de winkelwagenpagina.
- Bevestiging vragen: toont een bevestigingsvenster vóór het legen, om onbedoelde klikken te voorkomen.
- Knoplabel: tekst op de knop, aanpasbaar en vertaalbaar in elke taal.
- Bevestigingsbericht: tekst van de bevestigingsvraag, aanpasbaar en vertaalbaar in elke taal.
De labels zijn meertalige velden: selecteer elke taal in de veldselector om de tekst aan te passen. De standaardwaarden worden vanaf de installatie in de vijf talen meegeleverd.
Werking
Wat er wordt verwijderd
Bij de klik (en na bevestiging als die is ingeschakeld) verwijdert de module alle producten uit de winkelwagen, inclusief hun varianten en personalisaties, en trekt vervolgens alle kortingsbonnen en winkelwagenregels in. De winkelwagen keert terug naar een volledig lege staat.
Automatische herlading
Zodra de winkelwagen is geleegd, wordt de winkelwagenpagina automatisch herladen om de lege staat te tonen, zonder tussenkomst van de klant.
Thema-onafhankelijke injectie
De resources (script en stijl) worden geladen via de hook actionFrontControllerSetMedia, die altijd wordt aangeroepen. Het script zoekt vervolgens het winkelwagenblok op en voegt daar de knop in. Deze aanpak garandeert de weergave van de knop zelfs wanneer het thema de klassieke weergavehooks van de winkelwagenpagina niet triggert.
Als het thema de hook displayShoppingCartFooter triggert, wordt de knop daar rechtstreeks gerenderd en koppelt het script zich eraan zonder een duplicaat te creëren.
Beveiliging
Het legen gebeurt via een AJAX-request beveiligd met een token gekoppeld aan de huidige winkelwagen, en heeft alleen betrekking op de winkelwagen van de lopende sessie. Geen enkele andere sessie of winkelwagen wordt beïnvloed.
FAQ en probleemoplossing
De knop verschijnt niet op de winkelwagenpagina
Leeg de PrestaShop-cache (Geavanceerde instellingen > Prestaties) en schakel tijdens uw tests de combinatie/compressie (CCC) uit en forceer de hercompilatie van de templates. Herlaad vervolgens de winkelwagenpagina in incognitomodus. De knop wordt alleen getoond wanneer de winkelwagen minstens één artikel bevat.
Mijn aangepaste thema toont de knop nog steeds niet
De knop wordt ingevoegd in de eerste herkende winkelwagencontainer. Als uw thema een zeer specifieke structuur gebruikt, open dan de browserconsole: als het object dfClearCart gedefinieerd is, zijn de resources correct geladen en hoeft alleen de invoegselector aan uw winkelwagenblok te worden aangepast.
De winkelwagen wordt pas na een handmatige verversing geleegd
Zorg dat u de laatste versie van de module gebruikt: de herlading van de winkelwagenpagina wordt na het legen automatisch getriggerd.
Is de module compatibel met PrestaShop 9?
Ja. De module is compatibel met PrestaShop 8 en 9, in multistore en meertalig, zonder verouderde methoden.