Naar hoofdinhoud springen
🇳🇱
Shopify GEO AI Visibility

Kunnen AI-crawlers je Shopify-pagina’s lezen? Een rendercontrole

Controleer wat je Shopify-pagina’s zonder JavaScript tonen, spoor ontbrekende productgegevens op en prioriteer renderverbeteringen zonder aan te nemen dat elke crawler hetzelfde werkt.

11 min read

Begin bij wat de pagina daadwerkelijk aanlevert

Kunnen AI-crawlers je Shopify-pagina’s lezen? Ze kunnen je pagina’s mogelijk ophalen, maar daarmee staat niet vast welke inhoud ze ontvangen of dat ze de JavaScript uitvoeren die meer inhoud toevoegt. Een pagina die er in je browser compleet uitziet, kan nog steeds een onvolledig begindocument aanleveren.

De praktische controle bestaat uit het vergelijken van drie weergaven: de initiële paginarespons, de pagina met uitgeschakelde JavaScript en de normaal gerenderde pagina. Zoek naar essentiële productgegevens, artikeltekst en links, niet naar identieke vormgeving.

Als belangrijke gegevens pas verschijnen nadat JavaScript is uitgevoerd, vraag je themaontwikkelaar of appleverancier dan om die gegevens beschikbaar te maken in de initiële respons. Behoud interactieve verbeteringen waar ze klanten helpen.

Deze controle bewijst niet dat een bepaalde dienst je winkel heeft gecrawld, geïndexeerd, geciteerd of aanbevolen. De controle stelt iets beperkters en nuttigs vast: of je openbare pagina afhankelijk is van uitvoering in de browser om de essentiële betekenis over te brengen.

Maak onderscheid tussen toegang, rendering en selectie

Maak onderscheid tussen drie vragen voordat je ontbrekende tekst onderzoekt:

  1. Toegang: Kan de crawler de openbare URL opvragen volgens jouw toegangsregels?
  2. Rendering: Bevat de respons nuttige inhoud, of moet JavaScript die opbouwen?
  3. Selectie: Kiest de dienst ervoor om die inhoud in de resultaten op te nemen?

Dit zijn afzonderlijke beslissingen. Het verbeteren van de tweede garandeert de derde niet.

Googles documentatie over JavaScript-SEO ↗ beschrijft crawlen, renderen en indexeren als afzonderlijke fasen. Google Zoeken voert JavaScript uit met Chromium, maar Google merkt ook expliciet op dat niet alle bots JavaScript kunnen uitvoeren. De rendermogelijkheden van Google mogen niet worden beschouwd als een universele specificatie voor crawlers.

OpenAI’s crawlerdocumentatie ↗ maakt onderscheid tussen OAI-SearchBot, die zoeken ondersteunt, en GPTBot, die inhoud crawlt die kan worden gebruikt voor modeltraining. Hun instellingen zijn onafhankelijk van elkaar. ChatGPT-User verzorgt bepaalde door gebruikers geïnitieerde bezoeken en regelt niet het automatisch crawlen voor zoekresultaten.

Die documentatie bevestigt geen universele mogelijkheid voor deze agents om JavaScript te renderen. Beschouw de controle zonder JavaScript als een voorzichtige diagnose, niet als een exacte simulatie van een bezoek van OpenAI.

Kies een nuttige steekproef van Shopify-pagina’s

Begin met een kleine steekproef die verschillende paginaopbouwen omvat, in plaats van alleen je homepage te controleren.

Neem een standaardproductpagina op, een product met variantafhankelijke informatie, een collectiepagina, een productgericht artikel en eventuele landingspagina’s die met een aparte paginabouw-app zijn gemaakt. Als twee templates de inhoud anders indelen, neem ze dan allebei op.

Gebruik openbare webwinkel-URL’s, geen voorbeelden uit de editor. Open ze terwijl je bent uitgelogd, zodat je waarnemingen niet afhankelijk zijn van toegang als winkelbeheerder. Noteer de taal, valuta, geselecteerde variant en eventuele toestemmingskeuze die invloed kan hebben op wat je ziet.

Noteer voor elke URL welke informatie bij de vergelijking behouden moet blijven:

  • Productnaam en een bruikbare beschrijving.
  • Relevante specificaties, materialen, afmetingen of compatibiliteit.
  • Weergegeven prijs en context over beschikbaarheid, waar van toepassing.
  • Artikeltitel, belangrijkste uitleg en belangrijke voorbehouden.
  • Links naar de besproken producten of ondersteunende pagina’s.

Eis niet dat elk interactief bedieningselement zonder JavaScript werkt. Het eerste doel is leesbare informatie, niet een volledig werkend afrekenproces zonder scripts.

Inspecteer het initiële document

Open de openbare pagina op de gebruikelijke manier en gebruik de browserfunctie Paginabron weergeven . Die verschilt van het paneel Elementen in de ontwikkelaarstools, dat het huidige document toont na verwerking door de browser en eventuele wijzigingen door JavaScript.

Zoek in de broncode naar een kenmerkende zin uit de productbeschrijving of het artikel. Zoek vervolgens naar een specificatie en de bestemming van een productlink.

Interpreteer treffers zorgvuldig. Een zin in scriptgegevens is niet hetzelfde als een zin die als leesbare pagina-inhoud wordt aangeleverd. Noteer of het gegeven in gewone inhoud voorkomt, alleen in ingebedde gegevens of nergens in de broncode.

Voor een nauwkeurigere controle van de respons die bij het laden van je huidige pagina is gebruikt:

  1. Open de ontwikkelaarstools van je browser en selecteer Netwerk.
  2. Laad de pagina opnieuw.
  3. Selecteer het verzoek voor het hoofddocument, niet voor een afbeelding of script.
  4. Inspecteer de respons en status ervan.
  5. Zoek in die respons naar dezelfde gegevens.

Dit geeft je concreet bewijsmateriaal om aan een ontwikkelaar over te dragen. In plaats van te zeggen ‘crawlers kunnen dit niet lezen’, kun je melden: ‘In de respons van het hoofddocument ontbreekt de alinea over compatibiliteit die in de normale browserweergave verschijnt.’

Combineer de broncode-inspectie met de volgende controle. Geen van beide beantwoordt op zichzelf elke vraag over zichtbaarheid.

Laad opnieuw met uitgeschakelde JavaScript

Open in de ontwikkelaarstools van Chrome het opdrachtmenu, zoek naar JavaScript uitschakelenen selecteer die optie. Houd de ontwikkelaarstools open en laad de pagina opnieuw. Browserversies verschillen, dus gebruik de overeenkomstige site-instelling als die optie niet beschikbaar is.

JavaScript uitschakelen nadat een pagina al is geladen, is niet genoeg. Eerder ingevoegde inhoud kan blijven staan totdat je opnieuw laadt.

Lees de vernieuwde pagina zoals een bezoeker dat zou doen. Kun je vaststellen om welk product het gaat, begrijpen waarvoor het bedoeld is en de belangrijke voorbehouden vinden? Blijft bij een artikel de belangrijkste uitleg beschikbaar? Kun je relevante links volgen?

Noteer ontbrekende gegevens los van een kapotte weergave. Een ingestorte lay-out met leesbare specificaties is een ander probleem dan een aantrekkelijke buitenkant zonder specificaties.

Maak ook onderscheid tussen ontbrekende en verborgen inhoud. Tekst kan in de respons staan, maar verborgen zitten in een uitklapsectie waarvan de bediening niet meer werkt. Dat vraagt om een toegankelijke terugvalweergave, niet noodzakelijk om een andere inhoudsbron.

Schakel JavaScript weer in en laad opnieuw wanneer je klaar bent. Herhaal de vergelijking voor elke template in je steekproef, in plaats van aan te nemen dat één resultaat voor de hele winkel geldt.

Zet waarnemingen om in een beslissing

Gebruik deze beslistabel om het volgende onderzoek te kiezen. Het is een kader voor het prioriteren van problemen, geen voorspelling van prestaties in zoekresultaten.

WaarnemingWat dit vaststeltVolgende actie
Kerngegevens verschijnen in de respons en zonder JavaScriptDie gegevens zijn bij deze controle niet afhankelijk van scriptuitvoeringControleer toegangsregels en inhoudelijke juistheid afzonderlijk
Gegevens verschijnen alleen in de normaal gerenderde weergaveDe aanlevering ervan is afhankelijk van verwerking door de browserVraag de verantwoordelijke thema- of appontwikkelaar om een terugvaloptie in de initiële respons
Gegevens verschijnen alleen in ingebedde dataDe gegevens bestaan, maar leesbare inhoud is niet aangetoondVoeg een leesbare feitelijke samenvatting toe of herstel die
Tekst staat in de broncode, maar een uitklapsectie verbergt deze zonder scriptsAanlevering en presentatie verschillenZorg voor een leesbare terugvalweergave voor essentiële informatie
De pagina geeft een foutmelding of vereist inloggenHet verzoek om openbare inhoud slaagt niet zoals verwachtLos toegangsproblemen of afwijkend responsgedrag op voordat je aan rendering werkt
Googles gerenderde weergave bevat gegevens die ontbreken in de broncodeGoogles test heeft die gegevens gerenderdTrek dat resultaat niet door naar andere crawlers
Artikeltekst blijft behouden, maar productlinks verdwijnenDe productnavigatie van het artikel is afhankelijk van extra functionaliteitBied gewone bestemmingslinks aan naast de essentiële uitleg

Geef ontbrekende productidentiteit, specificaties, voorbehouden en bestemmingen voorrang boven decoratieve functies. Een kapotte animatie en een ontbrekende veiligheidsbeperking mogen niet dezelfde prioriteit krijgen.

Verhelp de afhankelijkheid van de inhoud, niet alleen het symptoom

Stel voor elk ontbrekend blok vast wie ervoor verantwoordelijk is. Het kan afkomstig zijn uit het thema, de artikeltekst, productinformatie, een paginabouwer of een app. Vraag welk onderdeel de gegevens levert en welk onderdeel ze omzet in zichtbare inhoud.

Een bruikbaar implementatieverzoek is:

‘Lever de essentiële feitelijke samenvatting in de initiële paginarespons en verrijk die vervolgens met JavaScript. Behoud dezelfde betekenis en onderhoud één gezaghebbende bron voor veranderlijke gegevens.’

Dat laat de ontwikkelaar ruimte om een passende implementatie te kiezen. Schrijf geen themawijziging voor voordat je de daadwerkelijke afhankelijkheid hebt vastgesteld.

Vraag voor productpagina’s om een leesbare basisbeschrijving en de belangrijkste specificaties. Variantkeuzes kunnen interactief blijven, maar de basisweergave mag niet suggereren dat de afmetingen, prijs of beschikbaarheid van één variant voor elke optie gelden.

Behoud bij artikelen de belangrijkste informatieve uitleg en betekenisvolle productverwijzingen in de aangeleverde inhoud. Een aanbevelingswidget moet de uitleg aanvullen in plaats van de enige vermelding van het relevante product te leveren.

Google beveelt server-side rendering of prerendering aan als nuttige benaderingen, omdat niet alle bots JavaScript uitvoeren. Dat ondersteunt het verminderen van onnodige afhankelijkheid van rendering; het rechtvaardigt niet het verwijderen van elk script uit een webwinkel.

Doorloop twee hypothetische voorbeelden

Een specificatiepaneel is de enige bron van afmetingen

Hypothetisch voorbeeld: De productpagina van een tas toont afmetingen in een paneel dat door een app wordt aangestuurd. Met uitgeschakelde JavaScript blijven de producttitel en inleidende beschrijving staan, maar verdwijnen de afmetingen. Bij het doorzoeken van de hoofdrespons zijn ze alleen in ingebedde appgegevens te vinden.

De diagnose is niet ‘de productpagina is onzichtbaar’. De beperktere bevinding is dat de afmetingen bij deze controle niet in een leesbare basisweergave beschikbaar zijn.

Een praktisch herstelverzoek is om de afmetingen naast de hoofdbeschrijving op te nemen met dezelfde bijgehouden productinformatie. Behoud het verrijkte paneel als dat nuttig blijft.

Acceptatiecriteria moeten het gegeven benoemen: de afmetingen moeten als leesbare inhoud in de initiële respons en de weergave zonder scripts verschijnen, met behoud van eventuele voorbehouden per variant. Controleer daarna of het normale paneel en de basisweergave overeenkomen.

Een artikel verliest zijn productbestemmingen

Hypothetisch voorbeeld: Een artikel legt uit hoe je vervangingsfilters kiest. De tekst blijft zonder JavaScript behouden, maar een interactieve carrousel levert alle links naar compatibele producten. Zonder die carrousel bereiken lezers het einde zonder een bestemming.

Laat het uitleggevende artikel intact en voeg beschrijvende productlinks toe waar compatibiliteit wordt besproken. Vervang nauwkeurige compatibiliteitsinformatie niet door een algemene link ‘shop nu’.

ClickFrom.AI biedt gerelateerde productkaarten voor Shopify-artikelen en productgerichte bloginhoud die daarvoor in aanmerking komen. Als je die kaarten gebruikt, neem hun daadwerkelijke uitvoer dan mee in je rendercontrole in plaats van aan te nemen hoe die wordt aangeleverd. Raadpleeg /pricing voor de actuele voorwaarden.

Kaarten kunnen de productverwijzingen van een artikel aanvullen. Ze zijn geen bewijs dat een crawler de pagina heeft bezocht en mogen ontbrekende kerngegevens niet vervangen.

Controleer toegangsregels en rendering door Google afzonderlijk

Als de respons onvolledig is doordat de openbare pagina wordt geblokkeerd, los dat probleem dan op voordat je inhoud herschrijft. Controleer de relevante robots.txt-regels en eventuele toegangscontroles die de URL beïnvloeden.

De robots-analysetool kan je robots.txt-controle ondersteunen. Houd je voorkeuren voor zoeken en training gescheiden: OpenAI documenteert onafhankelijke instellingen voor OAI-SearchBot en GPTBot. Een zoekcrawler toelaten is toestemming, geen belofte van opname.

Googles crawleroverzicht ↗ maakt ook onderscheid tussen algemene crawlers, crawlers voor speciale gevallen en door gebruikers geactiveerde ophaalagents. Ga er niet van uit dat alle clients hetzelfde toegangspatroon volgen.

Specifiek voor Google beveelt de JavaScript-documentatie aan om bij onderzoek naar gerenderde inhoud de gerenderde HTML te inspecteren via URL-inspectie of de test voor uitgebreide resultaten. Vergelijk de belangrijke gegevens daarin met je eigen browserwaarnemingen.

Als Googles gerenderde HTML een specificatie bevat, leg dan dat beperkte resultaat vast. Het stelt niet vast hoe een andere dienst met de pagina omgaat.

Onderzoek onverwachte statuscodes of indexeringsrichtlijnen eveneens afzonderlijk. Google waarschuwt dat een initiële noindex-richtlijn rendering kan verhinderen, waardoor vertrouwen op JavaScript om die te verwijderen mogelijk niet werkt zoals bedoeld.

Hergebruik dit werkblad voor elke template

Kopieer het volgende werkblad naar je onderhoudsnotities. Vul het in met waargenomen feiten, niet met aannames over crawlergedrag.

Paginaregistratie

  • Openbare URL:
  • Paginatype en template:
  • Verantwoordelijk themaonderdeel of app:
  • Taal, valuta en geselecteerde variant:
  • Toegang zonder inloggen bevestigd:
  • Status van het hoofddocument:
  • Verwachte essentiële gegevens:
  • Datum en beoordelaar:

Vergelijkingsregistratie

Noteer voor elk essentieel gegeven:

  • Aanwezig als leesbare inhoud in de initiële respons:
  • Alleen aanwezig in ingebedde gegevens:
  • Leesbaar na opnieuw laden zonder JavaScript:
  • Leesbaar op de normaal gerenderde pagina:
  • Relevante bestemmingslink beschikbaar:
  • Eventuele afwijking of voorbehoud:
  • Specifiek renderresultaat van Google, indien gecontroleerd:

Checklist voor herstel en acceptatie

  • Identificeer het onderdeel dat verantwoordelijk is voor elk ontbrekend gegeven.
  • Scheid toegangsproblemen van renderafhankelijkheden.
  • Vraag om een terugvaloptie in de initiële respons voor essentiële inhoud.
  • Houd veranderlijke gegevens gekoppeld aan een gezaghebbende bron.
  • Behoud voorbehouden over varianten, valuta en beschikbaarheid.
  • Maak belangrijke bestemmingen beschikbaar via gewone links.
  • Controleer de initiële respons opnieuw na het herstel.
  • Controleer zowel de weergave zonder scripts als de normale browserweergave opnieuw.
  • Controleer of dubbele weergaven overeenkomen.
  • Herstel daarna de JavaScript-instellingen van de browser.
  • Leg onopgeloste beperkingen vast zonder te beweren dat de inhoud voor alle crawlers zichtbaar is.

Definieer succes beperkt en bruikbaar

Een geslaagde rendercontrole eindigt met bewijs: essentiële gegevens staan in het aangeleverde document, blijven begrijpelijk zonder JavaScript en komen overeen met de verrijkte pagina. Belangrijke links hebben bruikbare bestemmingen en de toegangsregels weerspiegelen je beoogde beleid.

Herhaal de relevante controles wanneer een themawijziging, update van de paginabouwer of vervanging van een app verandert hoe die gegevens worden aangeleverd.

Het doel is niet om je webwinkel er in elke omgeving identiek uit te laten zien. Het is ervoor zorgen dat het begrijpen van je producten en artikelen niet onnodig afhankelijk is van het uitvoeren van een interface. Dat is een praktische verbetering die je kunt verifiëren zonder bezoekersverkeer, posities in zoekresultaten of aanbevelingen te beloven.

Related Articles