Discussion Technical SEO AI Crawlers

Ako si AI crawlery poradia s nekonečným scrollovaním? Náš obsah nie je indexovaný

FR
FrontendDev_Marcus · Frontend Developer
· · 78 upvotes · 10 comments
FM
FrontendDev_Marcus
Frontend Developer · 19. december 2025

Postavili sme moderný React web s nekonečným scrollovaním pre náš blog. Skvelý používateľský zážitok, ale náš obsah sa v AI odpovediach vôbec nezobrazuje.

Google ho indexuje bez problémov (po úpravách pomocou SSR). No AI platformy väčšinu nášho obsahu prehliadajú.

Náš setup:

  • React SPA s nekonečným scrollovaním
  • SSR pre počiatočné načítanie stránky
  • Ďalší obsah sa načítava cez JavaScript pri scrollovaní
  • 500+ blogových príspevkov, len asi 50 je prístupných AI

Otázky:

  • Spúšťajú AI crawlery vôbec JavaScript?
  • Je nekonečné scrollovanie zásadne nekompatibilné s AI viditeľnosťou?
  • Aký je najlepší technický prístup pre prístupnosť AI crawlerov?
  • Máme celé stránkovanie prerobiť?

Riešil niekto z frontend vývojárov toto?

10 comments

10 komentárov

CE
CrawlerTech_Expert Expert Technický SEO konzultant · 19. december 2025

Rozoberiem, ako rôzne AI crawlery spracúvajú JavaScript:

Podpora JavaScriptu v AI crawlery:

CrawlerJS renderovanieSimulácia scrollovaniaČas čakania
GPTBotObmedzené/žiadneNieMinimálne
Google-ExtendedDobré (ako Googlebot)NieŠtandardné
ClaudeBotObmedzenéNieMinimálne
PerplexityBotRôzneNieObmedzené
Common CrawlŽiadneNieŽiadne

Hlavný problém:

Nekonečné scrollovanie vyžaduje:

  1. Spustenie JavaScriptu
  2. Vyvolanie udalosti scrollovania
  3. Ďalšie HTTP požiadavky
  4. Renderovanie nového obsahu

Väčšina AI crawlerov zlyhá už v kroku 1 alebo 2.

Prečo SSR nestačí:

SSR poskytuje počiatočnú stránku. Ale obsah načítaný nekonečným scrollovaním nie je “počiatočný” – načíta sa až po interakcii. SSR teda neodstráni závislosť na interakcii.

Zásadný problém:

Nekonečné scrollovanie je v súčasnosti zásadne nekompatibilné so schopnosťami AI crawlerov. Potrebujete iný prístup.

FM
FrontendDev_Marcus OP · 19. december 2025
Replying to CrawlerTech_Expert
Takže vlastne musíme prerobiť celý systém? Aký je odporúčaný postup?
CE
CrawlerTech_Expert Expert · 19. december 2025
Replying to FrontendDev_Marcus

Odporúčané prístupy (podľa AI prístupnosti):

Možnosť 1: Tradičné stránkovanie (najpriateľskejšie pre AI)

/blog/page/1
/blog/page/2
/blog/page/3
  • Každá stránka má vlastnú URL
  • Obsah je v počiatočnom HTML
  • Sitemap obsahuje všetky stránky
  • AI crawlery majú prístup ku všetkému

Možnosť 2: Hybridný prístup

  • Pre používateľov nekonečné scrollovanie
  • ALE zároveň poskytovať aj stránkované URL
  • Sitemap odkazuje na stránkované verzie
  • Použiť canonical, aby sa predišlo duplicitám
<!-- Stránka s nekonečným scrollovaním -->
<link rel="canonical" href="/blog/page/1" />

<!-- Stránkovanie je vždy dostupné -->
<nav>
  <a href="/blog/page/1">1</a>
  <a href="/blog/page/2">2</a>
</nav>

Možnosť 3: Prerenderovanie pre AI crawlery

  • Detekcia AI user agentov
  • Podávať prerenderovaný HTML
  • Kompletný obsah v počiatočnej odpovedi

Každá možnosť má svoje kompromisy. Možnosť 1 je najjednoduchšia a najspoľahlivejšia pre AI. Možnosť 2 zachováva UX a zároveň pridáva prístupnosť pre AI.

RS
ReactDev_Sarah React Developer · 19. december 2025

Mali sme presne tento problém. Tu je naše riešenie:

Implementácia hybridného prístupu:

// Štruktúra URL
/blog              // Nekonečné scrollovanie (default pre užívateľov)
/blog/archive/1    // Stránkované (prístupné pre crawlery)
/blog/archive/2

Kľúčové implementačné detaily:

  1. Sitemap obsahuje len stránkované URL

    • AI crawlery objavujú stránky /blog/archive/*
    • Tieto renderujú plný obsah na strane servera
  2. Stránka s nekonečným scrollovaním načítava rovnaký obsah

    • Využíva stránkovacie API na pozadí
    • Lepší UX pre ľudí
  3. Interné odkazy smerujú na jednotlivé články

    • Nie na pozíciu v nekonečnom scrollovaní
    • Každý článok má vlastnú URL
  4. robots.txt odporúčanie:

# Nech crawlery zamerajú pozornosť na jednotlivé články
# Nie na kontajner nekonečného scrollovania
Sitemap: /sitemap.xml

Výsledky:

  • UX pre ľudí nezmenený (nekonečné scrollovanie)
  • AI crawlery majú prístup ku všetkému obsahu cez archívne stránky
  • Všetky články sú indexované
  • Miera citácií sa po implementácii zvýšila 4-násobne
NK
NextJSDev_Kevin · 18. december 2025

Špecifikum pre Next.js:

Použitie getStaticPaths + getStaticProps:

// pages/blog/page/[page].js
export async function getStaticPaths() {
  const totalPages = await getTotalPages();
  const paths = Array.from({ length: totalPages }, (_, i) => ({
    params: { page: String(i + 1) }
  }));
  return { paths, fallback: false };
}

export async function getStaticProps({ params }) {
  const posts = await getPostsForPage(params.page);
  return { props: { posts, page: params.page } };
}

Výhody:

  • Statické stránky pre každé stránkovanie
  • Kompletný obsah v HTML už pri build time
  • AI crawlery získajú celý obsah
  • Rýchle načítanie (statické)

Potom pridajte nekonečné scrollovanie ako vylepšenie:

  • Na strane klienta používa rovnaké API
  • Progresívne vylepšenie
  • Funguje aj bez JS

Takto získate to najlepšie z oboch svetov.

PS
Prerender_Specialist Expert · 18. december 2025

Dopĺňam možnosť prerenderovania:

Prerenderovacie služby pre AI crawlery:

Môžete detegovať user agent AI crawlerov a podávať im prerenderovaný obsah:

// middleware
if (isAICrawler(req.headers['user-agent'])) {
  return servePrerenderedVersion(req.url);
}

Detekcia AI crawlerov:

const aiCrawlers = [
  'GPTBot',
  'ChatGPT-User',
  'Google-Extended',
  'ClaudeBot',
  'PerplexityBot',
  'anthropic-ai'
];

function isAICrawler(userAgent) {
  return aiCrawlers.some(crawler =>
    userAgent.includes(crawler)
  );
}

Možnosti prerenderovania:

  • Prerender.io
  • Rendertron
  • Vlastné riešenie s Puppeteerom
  • Prerendering pri build time

Pozor:

Nie všetky AI crawlery sa jednoznačne identifikujú. Niektoré tak môžu zostať neodhalené. Ide o doplnkový prístup, nie náhradu za správne stránkovanie.

SL
SEODevOps_Lisa · 18. december 2025

Testovacia metodika pre prístupnosť obsahu AI crawlermi:

Manuálne testy:

  1. Test s vypnutým JavaScriptom:

    • Otvorte blog v prehliadači
    • Vypnite JavaScript
    • Aký obsah je vidieť?
    • Takto to približne uvidia crawlery bez JS
  2. Test zobrazenia zdroja:

    • Zobraziť zdrojový kód stránky (nie cez inspect)
    • Je tam váš obsah?
    • Alebo len JS placeholdery?
  3. curl test:

    curl -A "GPTBot/1.0" https://yoursite.com/blog/
    
    • Je v odpovedi skutočný obsah?

Automatizované testy:

  1. Google Search Console:

    • Nástroj na kontrolu URL
    • “Zobraziť vykreslenú stránku” ukáže, čo vidí Googlebot
    • (Nie AI crawlery, ale podobné JS renderovanie)
  2. Lighthouse audit:

    • Skontrolovať kategóriu “SEO”
    • Problémy s prehľadávaním budú označené

Čo chcete vidieť:

  • Obsah už v počiatočnej HTML odpovedi
  • Odkazy na všetky stránky sú objaviteľné
  • Pre zobrazenie obsahu nie je potrebný JS
E
EcommerceDevSEO · 17. december 2025

Pohľad z e-commerce:

Máme 10 000+ produktov s funkciou “načítať viac”. Tu je naše riešenie:

Štruktúra kategórie:

/category/shoes                    # Prvých 24 produktov + načítať viac
/category/shoes?page=2            # Produkty 25-48
/category/shoes?page=3            # Produkty 49-72

Implementácia:

  1. Počiatočná stránka vždy obsahuje stránkovacie odkazy

    • Aj keď je zapnuté nekonečné scrollovanie
    • V pätičke sú odkazy na stranu 1, 2, 3…
  2. ?page= parametre sú canonical

    • Každá stránka je vlastný obsah
    • Nie duplikát hlavnej stránky
  3. Sitemap obsahuje všetky stránkované URL

    • Nie len základnú URL s nekonečným scrollom
  4. Produkty majú vlastné URL

    • Stránkovanie kategórie je kvôli objaveniu
    • Produkty sú hlavný obsah

Výsledok:

AI platformy citujú naše produktové stránky, na ktoré natrafia cez stránkovanú štruktúru kategórií.

FM
FrontendDev_Marcus OP Frontend Developer · 17. december 2025

Toto bolo nesmierne užitočné. Tu je môj plán implementácie:

Prístup: Hybridné stránkovanie

Fáza 1: Pridať stránkované trasy (1.-2. týždeň)

  • Vytvoriť /blog/archive/[page] trasy
  • SSR pre kompletný obsah v HTML
  • Pridať stránkovaciu navigáciu
  • Aktualizovať sitemap na tieto stránky

Fáza 2: Aktualizovať existujúci nekonečný scroll (3. týždeň)

  • Nekonečný scroll ponechať na /blog
  • Ako zdroj dát použiť archívne stránky
  • Canonical z /blog na /blog/archive/1

Fáza 3: Testovanie a validácia (4. týždeň)

  • Testovať s vypnutým JS
  • curl testy pre AI user agentov
  • Sledovať mieru citácií v AI

Technická implementácia:

/blog                 → Nekonečné scrollovanie (ľudia, canonical na archive/1)
/blog/archive/1       → Stránkované (crawlery, canonical na seba)
/blog/archive/2       → Stránkované (crawlery)
/blog/[slug]          → Jednotlivé články (hlavný obsah)

Kľúčové princípy:

  • Obsah prístupný aj bez JavaScriptu
  • Každý obsah má priamu URL
  • Sitemap obsahuje všetky obsahové stránky
  • Nekonečné scrollovanie je vylepšenie, nie požiadavka

Vďaka všetkým za detailné technické rady.

Have a Question About This Topic?

Get personalized help from our team. We'll respond within 24 hours.

Frequently Asked Questions

Dokážu AI crawlery spracovať obsah s nekonečným scrollovaním?
Väčšina AI crawlerov má obmedzené možnosti renderovania JavaScriptu. Obsah, ktorý sa načíta až po interakcii (scrollovaní), je často pre AI systémy neviditeľný. Odporúča sa server-side rendering alebo hybridné prístupy.
Aký je najlepší spôsob stránkovania pre AI crawlery?
Tradičné stránkovanie s jedinečnými URL pre každú stránku je najvhodnejšie pre AI. Každá stránka by mala byť dostupná priamo cez URL, zahrnutá v sitemape a jej obsah by sa mal zobrazovať bez nutnosti JavaScriptu.
Renderujú AI crawlery JavaScript?
Renderovanie JavaScriptu AI crawlermi sa výrazne líši. GPTBot má obmedzené JS schopnosti. Niektoré crawlery vidia iba počiatočný HTML. Pre AI viditeľnosť by mal byť kľúčový obsah už v počiatočnej odpovedi servera, nie len načítaný cez JavaScript.
Ako môžem otestovať, či AI crawlery vidia môj obsah?
Vypnite JavaScript a zobrazte svoju stránku – to sa približuje pohľadu mnohých AI crawlerov. Skontrolujte tiež robots.txt, či AI crawlery nie sú blokované, a overte, či sa obsah nachádza v počiatočnom HTML zdrojovom kóde.

Monitorujte AI viditeľnosť vášho obsahu

Sledujte, ktoré vaše stránky sú objavené a citované AI platformami. Identifikujte problémy s crawlingom, ktoré ovplyvňujú vašu viditeľnosť.

Zistiť viac