Prvá case study o Hoplo.sk zachytila začiatok. Technický základ, obsahová architektúra, prvé signály organickej návštevnosti. To bol štart. Tento druhý update prichádza s odlišnou dynamikou. Nejde o budovanie od nuly, ale o prehlbovanie toho, čo už existuje. Za posledné obdobie som robil tri zásadné veci: prelinkoval som 75 slovníkových postov do funkčnej sieťovej štruktúry, uzatváral som orphan page clustre, ktoré Google odmietol brať vážne, a opravil som technický problém v Cloudflare, ktorý sabotoval Core Web Vitals naprieč celým portálom. K tomu pridal Google helpful content update v máji, ktorý zamiešal karty. Toto je prehľad toho, čo som robil, ako som na to šiel a čo mi dáta ukazujú dnes.
Kde stál Hoplo.sk po prvom update a prečo nestačilo čakať na výsledky
Po prvom update mal portál funkčnú technickú infraštruktúru, nastavené cache vrstvy a základnú obsahovú architektúru. Organické signály začali pribúdať a impressie rástli. Portál však mal jedno zásadné slabé miesto, ktoré som pri prvom pohľade podcenil. Slovníková vrstva, teda 75 článkov pokrývajúcich cestovateľskú terminológiu, zostala de facto izolovaná. Existovala na webe, Google ju indexoval, ale medzi slovníkovými postami neexistovalo žiadne zmysluplné prepojenie. Každý post stál sám za seba ako ostrov bez mosta k susedným obsahom.

Toto nie je len estetický problém. Interné prelinkovanie je pre Google signálom tematickej hĺbky. Ak máte 75 článkov o cestovateľskej terminológii a tie navzájom na seba neukazujú, Google ich hodnotí ako samostatné, nesúvisiace stránky. Topical authority — miera toho, ako Google vníma autoritatívnosť webu v danej téme — sa buduje práve prepojením súvisiacich obsahov. Nestačí obsah existovať. Google musí byť schopný prechádzať medzi súvisiacimi stránkami, vyhodnocovať ich vzájomné väzby a chápať, že za každým termínom stojí tematicky ukotvený kontext. Portál, ktorý toto spĺňa, dostáva od Googlu väčšiu dôveru pri hodnotení relevantnosti pre konkrétne vyhľadávania. Slovníková vrstva bola nevyužitá príležitosť a rozhodol som sa to zmeniť systematicky. Nie naraz, nie náhodne, ale s jasnou logikou, ktorú ďalej vysvetlím.
Tri vrstvy portálu a prečo je každá z nich nevyhnutná pre tematickú autoritu
Hoplo.sk stojí na trojvrstvovej obsahovej architektúre. Je dôležité pochopiť ju skôr, než prejdem k samotnému prelinkovaniu a k tomu, prečo mal tento zásah zmysel.
Hub je pilierová stránka destinácie, ktorá nesie celú tematickú autoritu clustra
Najvyššia vrstva sú hubové články o jednotlivých destináciách — Thajsko, Vietnam, Nepál, India a ďalšie krajiny. Každý hub je primárnym tematickým zdrojom pre celý cluster. Google ho vníma ako hlavnú autoritu pre danú destináciu a všetky súvisiace témy pod ňou. Hub nemôže stáť sám. Potrebuje obsahovú podporu zo satelitných článkov a z hlbšej slovníkovej vrstvy. Bez tejto podpory zostáva len stránka s nadpisom a bez kontextu, ktorú Google síce zaindexuje, ale nedáva jej autoritu zodpovedajúcu jej ambícii. Z pohľadu crawlu to znamená, že Googlebot príde na hub, no ďalej nemá kde ísť — a autoritu nemá komu odovzdať.
Satelitné články sú tematický most, ktorý funguje len vtedy, keď vedie oboma smermi
Pod každým hubom sú satelitné posty. Pokrývajú konkrétne aspekty destinácie, napríklad typy ubytovania, miestnu gastronómiu, bezpečnosť alebo praktické rady pre návštevníka. Ich úlohou je prenášať tematickú relevanciu od hubu nadol a zároveň byť prepojené so slovníkovou vrstvou. Satelitné články sú most. Bez prepojenej spodnej vrstvy vedie ten most nikam. Výsledok v praxi: bot príde, prečíta satelit, nemá pokračovanie a opustí cluster bez ďalšieho prehĺbenia. To je strata crawl potenciálu, ktorú interné prelinkovanie priamo opravuje.
Slovníkové posty boli 75 izolovaných stránok, ktoré Google nedokázal zasadiť do kontextu
Najspodnejšia vrstva sú slovníkové posty. Pokrývajú termíny ako „visa on arrival“, „travel insurance“, „hostel vs. hotel“ alebo „gap year“. Je ich 75 a pred týmto update neboli prepojené ani navzájom, ani smerom nahor k destináciám a satelitom. Google ich indexoval, ale nedokázal vyhodnocovať ich kontextuálny vzťah k zvyšku portálu. Z hľadiska PageRank distribúcie to znamenalo, že autorita sa na tieto stránky nedostávala z žiadneho iného interného zdroja. Zostávali tematicky anonymné. Táto izolácia bola najväčšia neefektívnosť v celej architektúre a prvé miesto, kde som zasiahol.
Interné prelinkovanie slovníkovej vrstvy: čo presne som robil a prečo na logike záleží

Každý zo 75 slovníkových postov som prešiel manuálne a doplnil interné prelinkovanie. Pristupoval som k tomu s jedným pravidlom: každý slovníkový post musí byť prepojený s inými relevantnými slovníkovými postami a zároveň musí ukazovať nahor k príslušnej stránke destinácie, kde je daný termín relevantný. Napríklad článok o „visa on arrival“ má interné linky na posty o konkrétnych krajinách, kde tento typ víz funguje, ale aj na súvisiace termíny v slovníku, ako sú cestovné poistenie alebo vstupné požiadavky.
Počet interných odkazov na jeden post som nastavil na rozsah od 10 do 20. Záviselo to od témy a od počtu súvisiacich obsahov dostupných na portáli. Termín, ktorý sa týka len niekoľkých špecifických destináciových clustrov, dostal prirodzene menej prepojení ako termín prierezový naprieč viacerými regiónmi. Priemer vyšiel na 15 odkazov na jeden slovníkový post. Nekládol som si za cieľ maximalizovať číslo odkazov za každú cenu — zámer bol, aby každý odkaz dával čitateľovi aj Googlebotu zmysel v kontexte daného článku.
Prelinkovanie len jedným smerom je polovičné riešenie a tu je dôvod prečo
Keď som začal pridávať linky zo slovníkových postov nahor k destináciám a satelitom, narazil som na prirodzený problém. Linka smeruje jedným smerom. Google vidí, že slovníkový post ukazuje na hubovú stránku, ale hubová stránka neukazuje späť. To nie je vzájomná podpora. Je to jednostranná závislosť bez spätnej väzby.
Riešil som to tak, že som zároveň prechádzal satelitné články a do nich pridával odkazovanie nadol k slovníkovej vrstve. Konkrétne: keď satelitný post o thajských víz obsahuje termín „visa on arrival“, tento výraz teraz odkazuje priamo na príslušný slovníkový post. Vznikla obojsmerná prelinkovacia sieť, kde tok autority a relevancie plynie nahor aj nadol. Google pri crawlovaní vidí vzájomné prepojenie tematicky príbuzných obsahov — a to je presne ten signál, ktorý topical authority potrebuje. Dôsledok je merateľný: crawl frequency na slovníkové posty stúpla, čo vidno v Coverage reporte GSC.
Výsledné čísla za celým prelinkovaním a čo za nimi stojí
- 75 slovníkových postov s priemerným počtom 15 interných odkazov na každý z nich.
- Spolu viac ako 1 100 nových interných prepojení v rámci portálu.
- Každý odkaz bol pridaný s ohľadom na obsahovú relevanciu, nie len pre číselný objem.
- Satelitné články dostali desiatky nových odchádzajúcich odkazov smerom k slovníku — v rámci každého väčšieho clustra ide o 5 až 15 nových prepojení z každého satelitu nadol.
Celková prelinkovacia sieť portálu sa týmto zásahom zásadne zahustila. Pre Googlebot to znamená, že každý vstupný bod do portálu — či už cez hub, satelit alebo slovníkový post — dáva prístup k ďalším relevantným obsahom bez slepých uličiek.
Orphan pages a destinácie bez dokončeného clustra, ktoré kazili celkový obraz portálu
Paralelne s prelinkovaním slovníka som riešil druhý systematický problém: nedokončené destináciové clustre. Orphan page (osirotená stránka) je technicky stránka, ku ktorej nevedie žiadny interný odkaz z iného obsahu na webe. V kontexte Hoplo.sk som mal iný typ problému. Huby síce nemali klasické orphan pages, ale ich clustre boli tak riedke, že Google ich nevnímal ako tematicky kompletné celky.

GCS DASBOARD HOPLO SK
Konkrétny príklad: hub o určitej destinácii mal priradené len 2 alebo 3 satelitné články. Pre funkčný cluster potrebujem minimálne 10 až 15 publikovaných článkov, ktoré pokrývajú destináciu z rôznych uhlov a odpovedajú na rôzne vyhľadávacie zámery. Ak hub má len 3 satelity, cluster vyzerá pre Google ako nedokončená, tematicky plytká časť webu. Takéto clustre sa nehodnotia rovnako ako dobre vyplnené tematické celky a neprenášajú hubu dostatočnú autoritu.
Identifikoval som všetky destinácie s počtom satelitných článkov pod desiatimi. Prioritizoval som tie, kde existoval potenciál dopytu a kde som mal aspoň základné podklady pre tvorbu obsahu. Kritérium nebola len veľkosť destinácie, ale aj to, či je téma pokrytá konkurenciou a či existuje reálny vyhľadávací objem v slovenskom a českom jazyku. Postupne som uzatváral cluster za clusterom, pričom som dbal na to, aby každý nový satelitný post mal ihneď nastavené interné prelinkovanie do slovníkovej vrstvy. Žiadne ďalšie izolované stránky — to bol zámer a ten som dodržal.
Kde stoja clustre v čase písania tejto štúdie a čo zostáva
Väčšinu pôvodne riedkych clustrov sme uzavreli. Zostávajú zhruba štyri huby, kde cluster ešte nie je kompletný. Tieto štyri destinácie majú publikované huby a čiastočné satelitné pokrytie, ale nedosiahli ešte prah, pri ktorom by som cluster považoval za uzavretý. Dopisovanie prebieha priebežne, nie v jednej vlne. Zámer je mať do konca roka všetky aktívne destinácie s minimálne 10 satelitnými postami a plnohodnotným prepojením do slovníkovej vrstvy.
Core Web Vitals a Cloudflare cache konflikt, ktorý som diagnostikoval dlhšie, ako som čakal

Core Web Vitals sú rankingovým signálom a ich výstraha v Google Search Console je problém, ktorý sa nedá odkladať. Na Hoplo.sk sa táto výstraha objavila a istý čas som nevedel, kde presne leží koreň problému. Symptómy boli jasné — zlé skóre TTFB a INP — ale zdroj sa skrýval v interakcii troch nezávislých systémov.
Portál beží na Contabo VPS spravovanom cez HestiaCP a má tri vrstvy cachovania:
- LiteSpeed Cache plugin — prvá vrstva cachovania priamo v rámci WordPress.
- HestiaCP cache nastavenia — druhá vrstva na úrovni servera.
- Cloudflare edge cache — tretia vrstva na úrovni CDN siete.
Táto trojvrstvová konfigurácia je efektívna, ale ak sa vrstvy navzájom nerešpektujú, vznikajú konflikty, ktoré sa navonok prejavia len ako výkonový problém bez jasného zdroja. Diagnostika trvala dlhšie, pretože každá vrstva fungovala správne sama o sebe — problém bol v ich vzájomnej kombinácii.
Konkrétny problém bol s nastavením „Always Use HTTPS“ v Cloudflare. Toto nastavenie presmerováva každú HTTP požiadavku na HTTPS na úrovni Cloudflare edge servera, ešte pred tým, než sa požiadavka dostane na pôvodný server. Hoplo.sk má SSL certifikát a HTTPS nastavené priamo na úrovni HestiaCP. Keď Cloudflare dostal požiadavku, presmeroval ju na HTTPS. Keď táto požiadavka dorazila na server, HestiaCP ju znovu spracovával cez vlastné HTTPS nastavenia. Vznikol reťazec zbytočných presmerovaní, ktorý pridával latenciu a v určitých prípadoch spôsoboval problémy so stabilitou cache. Výsledkom bolo negatívne hodnotenie metrík Core Web Vitals, konkrétne Time to First Byte a Interaction to Next Paint.
Riešenie bolo po diagnostike relatívne jednoduché. Vypol som „Always Use HTTPS“ v Cloudflare a celú HTTPS obsluhu som prenechal HestiaCP, kde patrí. Cloudflare teraz dostáva čisté požiadavky bez zbytočného presmerovacieho kroku a cache pravidlá fungujú presne tak, ako som ich nastavil. Výstraha v GSC po oprave zmizla a TTFB sa viditeľne zlepšil pri ďalšom meraní v PageSpeed Insights.
Google helpful content update v máji a čo mi hovorí parabolický tvar grafu v Search Console
Máj priniesol pre Hoplo.sk situáciu, ktorú som neplánoval. Google spustil ďalšiu vlnu helpful content update, ktorá zasiahla viaceré nové portály a magazíny. Hoplo.sk nebolo výnimkou. Traffic zaznamenal viditeľný pokles a impressie sa dočasne znížili. V prvom momente je takýto pokles nepríjemný, ale dáta hovorili inak ako krízová situácia.
Helpful content update nefunguje ako penalizácia v klasickom zmysle slova. Je to skôr prehodnotenie toho, akú váhu Google prikladá rôznym typom obsahu a zdrojom v danom momente. Portály, ktoré sú stále v budovaní tematickej autority a nemajú uzavreté všetky clustre, prechádzajú pri každom väčšom update prehodnotením. Google v podstate požaduje ďalšie dôkazy o tom, že portál je autoritatívny zdroj v danej téme. Uzavreté clustre, prepojená slovníková vrstva a opravené Core Web Vitals sú presne tými dôkazmi. Nie náhodne — toto sú signály, na ktoré sa sústreďujem od začiatku.
Čo vidím v Search Console dnes, mesiac po implementácii všetkých zmien, je parabolický nástup impresií a postupné obnovenie trafficu. Nie lineárny rast, ale tvar krivky, ktorý naznačuje opätovné crawlovanie a prehodnocovanie stránok. Google boty prechádzajú portálom intenzívnejšie ako pred update. Nová interná prelinkovacia sieť im dáva jasnejšiu mapu toho, ako sú obsahy navzájom prepojené. Toto nie je náhoda. Je to priamy výsledok systémových zmien, ktoré som v portáli urobil počas posledných týždňov.
Čo hovoria dáta po mesiaci od záverečného zásahu do portálu
Mesiac je krátka doba na konečné hodnotenie. SEO sa posudzuje v kvartáloch, nie v týždňoch. Treba s tým rátať — rankingy po väčšom zásahu do architektúry sa stabilizujú postupne, nie cez noc. Napriek tomu vidím niekoľko zreteľných signálov, ktoré stoja za zmienku:
- Impressie v Search Console rastú parabolicky od momentu, keď sa v systéme prejavila opravená cache konfigurácia a nová interná prelinkovacia sieť.
- Počet pozícií, na ktorých portál rankuje, sa rozšíril — objavujú sa nové kľúčové slová na pozíciách 11 až 30, čo signalizuje pohyb pred vstupom na prvú stranu.
- Slovníkové posty, ktoré predtým neboli v žiadnych viditeľných pozíciách, začínajú zbierať impressie na long-tail kľúčové slová.
Toto signalizuje, že Google ich začína chápať v kontexte širšej tematickej architektúry portálu, nie ako samostatné izolované stránky. Crawl budget sa distribuuje rovnomernejšie naprieč celou štruktúrou, čo je merateľný posun oproti stavu pred zásahom. Pre mladý portál, ktorý ešte buduje svoju autoritu, je toto jeden z najdôležitejších signálov — znamená to, že Google investuje čas do hlbšieho prehľadávania obsahu a nie len do povrchového crawlu hlavných stránok.

Poznámka k číslam: v čase písania tohto textu nemám ešte uzavreté medzikvartálne porovnanie, preto sa zámerne vyhýbam konkrétnym percentuálnym hodnotám, ktoré by mohli byť zavádzajúce bez dostatočného časového kontextu. Aktualizovanú verziu s presnými číslami doplním do štúdie po uzavretí nasledujúceho kvartálu.
Záverečné zhodnotenie projektu a osobný pohľad
Čo fungovalo a čo by som zopakoval
Tri rozhodnutia, ktoré by som zopakoval bez váhania:
- Systematický prístup k internému prelinkovaniu slovníkovej vrstvy. Keby som ho robil náhodne alebo bez logiky obojsmernosti, výsledok by bol iný. Kľúčová bola zásada: každý slovníkový post musí ukazovať nahor a satelitné posty musia ukazovať nadol. Bez tejto obojsmernosti by prelinkovanie malo len polovičný efekt na crawl efektivitu.
- Prioritizovanie uzatvárania clustrov pred akýmkoľvek iným obsahovým rozšírením. Je zbytočné publikovať nový typ obsahu, napríklad magazínové články, keď existujúce destináciové clustre nie sú kompletné. Google nedáva plnú váhu hubu, ktorý nemá dostatočnú satelitnú podporu. Uzavrieť existujúce pred expandovaním je princíp, ku ktorému sa budem vracať pri každom ďalšom update.
- Dôsledná diagnostika cache stacku pri akomkoľvek výkonovom probléme. Trojvrstvový cache je výkonný, ale ak nie sú vrstvy synchronizované, je zdrojom neviditeľných problémov, ktoré sa navonok javia ako niečo úplne iné. „Always Use HTTPS“ v Cloudflare vyzerá nevinne. V kombinácii s HestiaCP nastaveniami spôsoboval reálny výkonový problém, ktorý sa mal diagnostikovať skôr.
Čo by som zlepšil a čo plánujem nasadiť v najbližšom období
Čo by som urobil inak: začal by som s prelinkovaním slovníkovej vrstvy oveľa skôr. Mal som ho riešiť súbežne s publikovaním prvých slovníkových postov, nie až po tom, keď ich bolo 75 a každý stál izolovane. Spätné prelinkovanie 75 postov trvá niekoľkonásobne dlhšie ako priebežné prelinkovanie počas publikovania. Tento proces sme zvládli, ale bol zbytočne prácnejší a tú energiu som mohol investovať do tvorby ďalšieho obsahu.
Druhá vec, ktorú plánujem zlepšiť, je pravidelný audit interných prelinkovaní pri každom novom publikovanom obsahu. Momentálne nemám nastavený systematický workflow, ktorý by signalizoval, keď nový post nemá dostatočné interné prepojenia. Toto chcem vyriešiť zaradením kroku auditu priamo do publikačného procesu ako štandard pred každým zverejnením. Cieľ je jednoduchý: žiadna nová stránka by nemala ísť live bez minimálne 5 relevantných interných odkazov — smerom nahor aj nadol v rámci architektúry.
Čo plánujem nasadiť v najbližšom období:
- Uzavrieť zostávajúce štyri destináciové clustre — to je priorita číslo jeden.
- Spustiť nový typ obsahu vo forme magazínového formátu, ktorý je menej evergreen a viac aktuálny a reportážny.
- Postupne zaradiť travel news články s dátumovým razítkom a splniť technické požiadavky pre zaradenie do Google News.
Tento posledný krok neplánujem predbiehať. Najprv dokončiť, čo som začal, potom s čistým svedomím expandovať. To platilo na začiatku projektu a platí to rovnako aj teraz.



