dfsearchconsole: Google Search Console voor PrestaShop
Installatie, OAuth-configuratie bij Google, synchronisatie via cron en het benutten van de SEO-kansen van de module dfsearchconsole.
Overzicht
dfsearchconsole haalt de gegevens van Google Search Console rechtstreeks naar de backoffice van PrestaShop 8 en 9: de topzoekopdrachten per URL, de CTR per pagina, de gemiddelde positie en vooral vier categorieën SEO-kansen die automatisch worden berekend, met contextuele optimalisatiesuggesties.
De module voegt 5 tabbladen toe onder Verbeteren → Search Console: Dashboard, Pagina’s, Zoekopdrachten, Kansen en Instellingen. De communicatie met Google verloopt via OAuth2 in alleen-lezen (bereik webmasters.readonly), zonder Composer-afhankelijkheid en uitsluitend met native cURL.
Installatie
- Download het ZIP-bestand van de module vanuit uw DataFirefly-klantaccount.
- Ga in de PrestaShop-backoffice naar Modules → Modulebeheer → Een module uploaden.
- Kies het ZIP-bestand en laat de installatie aflopen.
- De module maakt 4 SQL-tabellen aan (
ps_dfgsc_sync,ps_dfgsc_page,ps_dfgsc_queryenps_dfgsc_opportunity) en registreert zijn 5 tabbladen onder het menu Verbeteren.
Vereisten: PrestaShop 8.0 tot 8.2 of 9.0, PHP 7.4 minimaal (8.1+ aanbevolen), de cURL-extensie ingeschakeld en een gevalideerde property in Google Search Console.
OAuth-configuratie in Google Cloud
De module praat met de Search Console-API via uw eigen OAuth2-inloggegevens. Die aanmaken is gratis en kost ongeveer tien minuten.
1. Het project aanmaken en de API inschakelen
- Ga naar console.cloud.google.com en maak een project aan (of gebruik een bestaand project).
- Zoek in API’s en services → Bibliotheek naar Google Search Console API en schakel die in.
2. Het toestemmingsscherm instellen
- Open API’s en services → OAuth-toestemmingsscherm.
- Type gebruiker: Extern (of Intern als u Google Workspace gebruikt).
- Vul de naam van de toepassing, het ondersteuningsadres en uw domein in.
- Voeg het bereik
https://www.googleapis.com/auth/webmasters.readonlytoe. - Zolang de toepassing niet is gepubliceerd, voegt u uw Google-adres als testgebruiker toe.
3. De OAuth-client-ID aanmaken
- Klik in API’s en services → Inloggegevens op Inloggegevens maken → OAuth-client-ID.
- Type toepassing: Webtoepassing.
- Plak bij Toegestane omleidings-URI’s de URL die in het scherm Instellingen van de module staat (van de vorm
https://uw-domein.nl/module/dfsearchconsole/oauth). - Noteer de Client ID en het Client Secret.
4. De module verbinden
- Open in PrestaShop Verbeteren → Search Console → Instellingen.
- Plak de Client ID en het Client Secret en sla op.
- Klik op Verbinden met Google en geef toestemming.
- Terug in de backoffice kiest u in de keuzelijst de Search Console-property die u wilt synchroniseren.
De knop De verbinding testen controleert of het token werkt en toont hoeveel properties er vanuit het verbonden account bereikbaar zijn.
Synchronisatie
Handmatige synchronisatie
De knop Nu synchroniseren in het scherm Instellingen start meteen een volledige synchronisatie. Reken op enkele seconden voor een kleine winkel tot 2 à 3 minuten voor een site met duizenden geïndexeerde pagina’s.
Automatische synchronisatie (cron)
Het scherm Instellingen toont een cron-URL die met een willekeurig token van 32 tekens is beveiligd. Voeg die toe aan uw crontab voor een dagelijkse synchronisatie:
0 4 * * * curl -s "https://uw-domein.nl/module/dfsearchconsole/cron?token=UW_TOKEN" > /dev/null
Google Search Console hanteert een vertraging van ongeveer 2 dagen op de gegevens. De module synchroniseert daarom altijd het venster dat eindigt op vandaag min 2 dagen. Eén synchronisatie per dag volstaat.
Terugkijkperiode
Standaard haalt de module 90 dagen aan gegevens op, plus de 90 voorgaande dagen om de verschillen te berekenen. Die periode is in de Instellingen aan te passen van 28 tot 480 dagen. Hoe groter het venster, hoe langer de synchronisatie duurt.
Dashboard
Het dashboard geeft een overzicht: 4 KPI-kaarten (klikken, vertoningen, CTR en gemiddelde positie) met de evolutie tegenover de vorige periode, de top 10 van de pagina’s, de top 15 van de zoekopdrachten en een blik op de belangrijkste kansen.
Bij de gemiddelde positie is een daling een verbetering (hoe lager het cijfer, hoe beter de pagina scoort). Het dashboard toont daarom een groene pijl wanneer de positie daalt.
Pagina’s en Zoekopdrachten
Tabblad Pagina’s
Een gepagineerde en sorteerbare lijst met alle URL’s die Search Console aanlevert, met klikken, vertoningen, CTR, positie en het verschil in klikken. Met een filter beperkt u de lijst tot een paginatype (product, categorie, CMS, overige) of tot een tekst. Klikken op een URL opent de detailweergave: de KPI’s van de pagina met de waarden van de vorige periode, de zoekopdrachten die op die URL uitkomen, de bijbehorende kansen en een rechtstreekse link naar het bewerken van de overeenkomstige PrestaShop-entiteit.
Tabblad Zoekopdrachten
Twee weergavemodi:
- Gegroepeerde weergave: één regel per zoekopdracht, samengeteld over alle URL’s. Ideaal om uw belangrijkste termen te vinden.
- Detailweergave: één regel per koppel zoekopdracht × URL. Onmisbaar om kannibalisatie te onderzoeken.
De posities krijgen een kleurcode: groen (1 tot 3), blauw (4 tot 10), geel (11 tot 20, te verbeteren) en grijs (21 en hoger).
SEO-kansen
Na elke synchronisatie berekent de module automatisch vier categorieën kansen opnieuw:
- Top 11 tot 20, binnen bereik (striking distance): zoekopdrachten tussen positie 11 en 20 (drempels instelbaar) met een minimum aan vertoningen. De module berekent de mogelijke klikwinst door een sprong naar positie 5 te simuleren.
- CTR onder het gemiddelde (top 10): pagina’s in de top 10 waarvan de werkelijke CTR onder 50 % van de verwachte CTR ligt volgens de ingebouwde referentiecurve (samengesteld uit studies van Advanced Web Ranking, Sistrix en Backlinko).
- Kannibalisatie: dezelfde zoekopdracht die 2 of meer URL’s oplevert. De module toont de concurrerende URL’s.
- Klikverlies: pagina’s die meer dan 25 % klikken hebben verloren tegenover de vorige periode.
Elke kans toont een prioriteitsscore, de bijbehorende cijfers en optimalisatiesuggesties die bij het paginatype passen (productfiche, categorie of CMS-pagina). Met de werkwijze Open / Behandeld / Genegeerd volgt u uw vooruitgang op. De knop Opnieuw berekenen bouwt alle kansen opnieuw op uit de gegevens die al in de database zitten, zonder de Google-API opnieuw aan te roepen.
Instellen van de drempels
In de Instellingen sturen drie drempels de detectie aan:
- Minimum aantal vertoningen (standaard 50): daaronder negeren de detectoren het koppel zoekopdracht × URL.
- Minimale en maximale positie voor striking distance (standaard 11 en 20): het positievenster dat als verbeterbaar geldt.
Voor een kleine winkel met weinig verkeer verlaagt u de vertoningsdrempel naar 20 of 30. Voor een grote site zet u die op 100 of hoger, zodat alleen betekenisvolle werven bovenkomen.
Problemen oplossen
« Token verlopen » of een 401-fout
Het refresh token wordt elk uur automatisch gebruikt. Heeft Google de toegang ingetrokken (gewijzigd wachtwoord, lange inactiviteit, handmatige intrekking), verbind de module dan opnieuw via de knop Verbinden met Google in het scherm Instellingen.
Geen enkele site in de keuzelijst
Het verbonden Google-account moet toegang hebben tot minstens één Search Console-property (als eigenaar of als gebruiker). Controleer dat op search.google.com/search-console met hetzelfde account.
Fout « redirect_uri_mismatch » bij het verbinden
De omleidings-URI die u in de Google Cloud Console opgeeft, moet exact overeenkomen met die in het scherm Instellingen van de module (inclusief het https-protocol en zonder overtollige slotslash).
Zeer trage synchronisatie of een timeout
De API pagineert in batches van 25 000 regels. Voor grote sites: verhoog memory_limit naar 512M, verhoog max_execution_time en gebruik bij voorkeur de cron, die niet aan de tijdslimiet van de browser gebonden is.
URL’s die niet aan PrestaShop-entiteiten worden gekoppeld
De resolver werkt op de link_rewrite (de slug van de vereenvoudigde URL). URL’s die door externe routingmodules worden gemaakt, kunnen ongekoppeld blijven: die verschijnen met het type « other » maar worden volledig geanalyseerd.
Verwijderen
Bij het verwijderen worden de 4 SQL-tabellen, de beheertabbladen en alle configuratiesleutels gewist, ook de OAuth-tokens. Denk eraan de toegang van de toepassing in te trekken via de beveiligingsinstellingen van uw Google-account als u de module niet meer gebruikt.