Siirry sisältöön
SilktideOhje

Sisältö luettavissa ilman JavaScriptiä

Sivusi pääsisällön – kappaleiden, otsikoiden, taulukoiden ja hintojen, joiden vuoksi kävijä tuli sivulle – on oltava palvelimesi ensimmäiseen pyyntöön palauttamassa HTML:ssä. tehty parannus on hyvä asia. Sisältö, joka ilmestyy vasta JavaScriptin suorittamisen jälkeen, on näkymätöntä useimmille AI-indeksoijille ja siten näkymätöntä myös niille avustajille, jotka siteeraavat niiden sisältöä.

Oletetaan tällä sivulla, että Fernwood uudisti markkinointisivustonsa yksisivuiseksi sovellukseksi. Selaimessa se näyttää täydelliseltä. Sivun lähdekoodissa näkyy lähes tyhjä <div id="root"></div>. Tämän tyhjän kuoren GPTBot, ClaudeBot, PerplexityBot ja vastaavat indeksoijat saavat.

Miksi tämä toimii

Perinteiset hakukoneet ovat suurelta osin ratkaisseet tämän: Google renderöi JavaScriptin ennen indeksointia. Vastauskoneet eivät ole. ChatGPT:tä, Claudeea, Perplexityä ja vastaavia järjestelmiä syöttävät indeksoijat hakevat yleensä raakamuotoisen HTML-vastauksen ja lopettavat siihen – ne eivät odota kehyksesi hydratoitumista, suorita pakettiasi eivätkä seuraa asiakaspuolen reittejä. Silktiden oma indeksointivertailu (renderöity sivu vs. raaka HTML) perustuu juuri tähän toimintaan; katso Sisältö ilman JavaScriptiä.

Virhetilanne on huomaamaton ja täydellinen:

  • Googlessa hyvin sijoittuva sivu voi puuttua kokonaan AI-vastauksista, koska avustajat eivät koskaan saaneet tekstiä.
  • Kaikki muut sivulle tehdyt AEO-panostukset – jäsennelty data, koneluettavat päivämäärät, vastaus ensin -kirjoittaminen – ovat arvottomia, jos indeksoija ei koskaan näe sisältöä, jota nämä signaalit kuvaavat.
  • Käyttäjät, joiden komentosarjat epäonnistuvat tai estetään, näkevät saman tyhjän kuoren, ja ensimmäisen sisällöllisen maalauksen aika kärsii, vaikka komentosarjat lopulta onnistuisivatkin.

Kyse on sivustoarkkitehtuurin ongelmasta, ei sivun muokkaamisen ongelmasta. Yhden URL-osoitteen korjaaminen käsin ei korjaa mallipohjaa, joka tuottaa seuraavat sata sivua.

Miten tarkistaa, mitä indeksoija näkee

Vahvista ongelma ennen muutosten tekemistä. Tässä on kolme tapaa vahvimmasta alkaen:

  1. Silktiden tarkistus. Sisältö ilman JavaScriptiä vertaa renderöidyn sivun merkityksellistä leipätekstiä indeksoinnin aikana tallennettuun raakaan HTML:ään. Se merkitsee sivut, joilla raakateksti on sekä alle noin 10 % renderöidystä tekstistä että absoluuttisesti vähäinen – kyseessä on todellinen tyhjä kuori, ei sivu, joka vain parantaa itseään.
  2. Näytä sivun lähdekoodi, älä DevToolsin Elements-paneelia. Selaimessa "Näytä sivun lähdekoodi" näyttää, mitä palvelin lähetti. Elements-paneeli näyttää DOM:n JavaScriptin suorittamisen jälkeen. Jos artikkelitekstisi näkyy Elements-paneelissa mutta puuttuu sivun lähdekoodista, JavaScriptin ohittavat indeksoijat eivät näe sitä.
  3. Hae ilman selainta. Päätteessä: curl -sL https://fernwood.example/pricing | head. Voit myös käyttää vain tekstiä näyttävää selainta. Jos hintataulukko puuttuu tulosteesta, se puuttuu myös indeksoijalta.

Varmista myös, että indeksoija pääsee ylipäätään sisään – täydellinen HTML-vastaus on hyödytön, jos robots.txt estää AI-indeksoijan tai palomuuri estää sen käytännössä (AI-indeksoijat estetty käytännössä).

Miten korjata se

Valitse teknologiapinoosi sopiva lähestymistapa. Kaikki kolme tuottavat saman lopputuloksen: ensimmäinen HTML-vastaus sisältää sisällön.

1. Palvelinpuolen renderöinti (SSR)

Palvelin renderöi jokaisen sivun pyynnöstä HTML:ksi; JavaScript hydratoi sen sitten interaktiivisuutta varten. Tämä on oletuspolku kehyksille, jotka jo tukevat sitä:

  • Next.js – käytä App Routeria Server Components -komponenttien kanssa tai getServerSideProps- / getStaticProps-toimintoja Pages Routerissa. Älä julkaise vain asiakaspuolella toimivaa juurta, joka hakee sisällön liittämisen jälkeen.
  • Nuxt – universaali- / SSR-tila (oletus), ei ssr: false.
  • Remix, SvelteKit, Astro (SSR-tila) ja vastaavat – sama ajatus: dokumenttivastaus sisältää leipätekstin.

Nyrkkisääntö: jos useEffect- / onMounted-haku tuo artikkelin sivulle, siirrä kyseinen datan haku palvelimelle.

2. Staattisen sivuston generointi (SSG)

Esirakenna sivut tavalliseksi HTML:ksi julkaisun yhteydessä. Tämä sopii ihanteellisesti sisällölle, joka ei muutu kävijäkohtaisesti – blogikirjoituksille, dokumentaatiolle, markkinointisivuille ja hinnoittelulle. Astro, Eleventy, Hugo, Next.js:n output: 'export' ja Nuxtin generate tuottavat kaikki tiedostoja, jotka indeksoija voi lukea täysin ilman JavaScriptiä.

SSG on yleensä edullisin voitto markkinointi- ja sisältösivustoille: renderöinnistä ei aiheudu pyyntökohtaista kustannusta, ja levyllä oleva HTML on täsmälleen se, minkä indeksoija saa.

3. Esirenderöinti väliratkaisuna

Jos et vielä voi vaihtaa kehystä, esirenderöintipalvelu tai rakennusvaihe voi toimittaa indeksoijille (ja usein ensikertalaisille kävijöille) renderöidyn HTML-tilannekuvan samalla, kun SPA jatkaa toimintaansa interaktiivisissa istunnoissa. Pidä tätä väliratkaisuna, älä päämääränä: tilannekuvien ajantasaisuus, välimuistin mitätöinti ja todennusta edellyttävät reitit muodostavat kaikki oman ylläpitotaakkansa. Korjaa renderöintitila mieluummin, kun se on mahdollista.

Googlen omat ohjeet JavaScript-SEO:sta ja web.dev-sivuston Rendering on the Web käsittelevät samaa kirjoa – SSR:ää, SSG:tä ja progressiivista parantamista – ongelman hakukonenäkökulmasta.

Mitä ensimmäisessä HTML:ssä on oltava

Ei jokaista pikseliä. Vaan sisältö, jota siteeraus voisi lainata:

  • Artikkelin tai sivun leipäteksti – otsikot, kappaleet, luettelot ja taulukot.
  • Hinnat, rajat ja muut tiedot, jotka haluat avustajien toistavan.
  • Jäsennelty data <script type="application/ld+json"> -lohkossa alkuperäisessä HTML:ssä – vasta hydrauksen jälkeen lisätty JSON-LD on yhtä näkymätöntä kuin proosa.
  • Kanoninen URL-osoite, otsikko ja metakuvaus <head>-osiossa.

JavaScript voi edelleen hallita valikoita, personointia, jo olemassa olevaa taulukkoa täydentäviä kaavioita ja progressiivisia ominaisuuksia. Silktiden tarkistus on tarkoituksella salliva parannusten suhteen: sivut, jotka tarjoavat pääsisältönsä HTML:nä ja lisäävät toiminnallisuuden sen päälle, läpäisevät tarkistuksen.

Yleiset virhemallit

  • Vain asiakaspuolella toimivat SPA:t – Create React App, Vite SPA:t ja vastaavat kokoonpanot, jotka toimittavat tyhjän kuoren ja hakevat reitit selaimessa. Ratkaisu on SSR/SSG, ei lisää asiakaskoodia.
  • "Lataa lisää" -toiminnon tai välilehtien takana oleva sisältö, joka ei koskaan näy HTML:ssä. Jos ainoa tapa päästä kolmanteen osioon on napsautus, joka hakee sen, indeksoijat eivät koskaan pääse kolmanteen osioon. Suosi aitoja URL-osoitteita tai sisällytä sisältö alkuperäiseen vastaukseen.
  • "Se toimii Googlessa, joten olemme kunnossa." Googlebotin renderöinti ei korvaa AI-indeksoijien luettavuutta. Googlen läpäiseminen ja GPTBotissa epäonnistuminen on yleinen, huomaamaton ero.
  • Indeksoijan estäminen ja JavaScriptin syyttäminen. Tarkista aina AI-indeksoijien pääsy ja tosiasiallinen tavoitettavuus tämän tekniikan ohella.

Miten Silktide auttaa

Jos Silktide ei voi lukea sisältöäsi ilman JavaScriptiä, eivät myöskään avustajat, joiden haluat siteeraavan sinua.

Aiheeseen liittyvää

Viimeksi päivitetty

Oliko tästä sivusta apua?