Problema, kurią visi ignoruoja
SPA ir „Google News” – tai klasikinis receptas į galvos skausmą. Dauguma kūrėjų sukuria gražų, greitą single-page aplikaciją, publikuoja naujieną ir… laukia. Kartais straipsnis atsiranda „Google News” per kelias valandas, kartais – po trijų dienų, kartais – niekada. Ir niekas tiksliai nežino kodėl.
Problema ne „Google” – problema architektūroje. „Googlebot” vis dar turi problemų su JavaScript-heavy puslapiais, ypač kai kalbame apie laiko jautrų turinį kaip naujienos.
SSR arba bent jau pre-rendering – ne pasirinkimas, o būtinybė
Jei rimtai galvojate apie „Google News” indeksavimą, pamiršk client-side rendering kaip pagrindinį sprendimą. Server-side rendering (SSR) čia yra ne gražus priedas, o pagrindas.
Next.js, Nuxt, SvelteKit – pasirink bet kurį, bet užtikrink, kad kiekvienas straipsnio URL grąžina pilnai surendrintą HTML be papildomo JavaScript vykdymo. „Googlebot” turi pamatyti turinį iš karto, pirmame atsakyme.
Jei SSR šiuo metu nerealu dėl techninių priežasčių – dynamic rendering yra kompromisas. Aptik „Googlebot” user-agent ir serviruok pre-rendered versiją. Tai ne idealas, bet veikia.
News Sitemap – tavo geriausias draugas
„Google News” turi savo sitemap formatą ir jis skiriasi nuo standartinio. Keli dalykai, kurie tikrai svarbūs:
- Publikuok naujieną sitemape per 2 minutes nuo jos pasirodymo – ne per valandą, ne per dieną. Automatizuok šį procesą.
- Naudok
<news:publication_date>su tiksliu laiku ir timezone. „Google” žiūri į šią datą nustatydamas aktualumą. - Sitemape laikyk tik paskutinių 48 valandų straipsnius – senesnių ten neturi būti.
- Sitemap URL turi būti stabilus ir greitas. Jei jis kraunasi 3 sekundes – tai jau problema.
Canonical, metadata ir kiti smulkmenos, kurios nėra smulkmenos
SPA dažnai turi problemą su dinaminiais meta tagais. Kiekvienas straipsnis turi turėti unikalų <title>, <meta name="description"> ir svarbiausia – teisingą <link rel="canonical">. Jei canonical nurodo į pagrindinį puslapį arba apskritai nėra – indeksavimas bus chaotiškas.
Taip pat: structured data. NewsArticle schema su datePublished, dateModified, author ir publisher laukais. Tai ne garantija, bet stipriai padeda „Google” suprasti, ką ji indeksuoja.
Ir dar vienas dalykas, kurį dažnai pamiršta – URL struktūra. Naujienos URL turi būti statiškas ir nesikeisti. Jokių session parametrų, jokių dinaminių query strings pagrindinėje URL dalyje.
Greitis – ne UX klausimas, o indeksavimo klausimas
„Google News” indeksuoja greitai arba neindeksuoja. Jei tavo straipsnio puslapis užkraunamas ilgiau nei 2-3 sekundes serverio pusėje – tikimybė patekti į naujienų srautą laiku dramatiškai krenta.
Core Web Vitals čia irgi svarbūs, bet svarbiau – Time to First Byte (TTFB). Optimizuok serverio atsakymo laiką, naudok CDN statiniams resursams, cache’ink straipsnių HTML ten, kur įmanoma.
Tai ne techninis projektas – tai nuolatinis darbas
Sukonfigūruoti viską teisingai – tai tik pradžia. „Google News” indeksavimas reikalauja nuolatinio monitoringo. Naudok „Google Search Console” ir reguliariai tikrink News sitemap būseną, indeksavimo klaidas ir coverage ataskaitas. Jei matai, kad straipsniai pradeda vėluoti – ieškoki priežasties iš karto, ne po savaitės.
Galiausiai, viskas susiveda į vieną paprastą principą: padaryk „Googlebot” gyvenimą kuo lengvesnį. Greitas serveris, pilnas HTML iš karto, teisingi meta duomenys, tikslus sitemap. Kai visa tai veikia kartu – „Google News” indeksavimas tampa nuspėjamas ir patikimas. O tai naujienų portale yra viskas.