# praktiktextil.sk — Zulien Score 73/100 (známka B)

> Bezplatný audit e-shopu: 73/100 celkové skóre. Firma: Praktik Textil s.r.o.. 100+ kontrol v 7 kategóriách (výkon, SEO, bezpečnosť, mobil, AI pripravenosť, GDPR, zraniteľnosti).

- **Auditovaný:** https://praktiktextil.sk
- **Firma:** Praktik Textil s.r.o.
- **Dátum auditu:** 2026-10-08
- **Plná správa:** https://score.zulien.sk/cs/r/praktiktextil.sk
- **JSON API:** https://euyszfecnvwsqpigioyx.supabase.co/functions/v1/api-v1/score/praktiktextil.sk

## Zhrnutie auditu

Váš web má dobré základy, ale potrebuje posilniť bezpečnosť a viditeľnosť. Hneď pridajte H1 nadpis na domovskú stránku, aby ste zlepšili SEO. Pozitívum: máte dobré nastavenie GDPR a prístupnosti.

## Skóre podľa kategórií

| Kategória | Skóre |
|---|---|
| Výkon | 90/100 |
| SEO | 74/100 |
| Bezpečnosť | 60/100 |
| Mobil | 70/100 |
| AI pripravenosť | 59/100 |
| GDPR | 80/100 |
| Zraniteľnosti | 59/100 |
| Prístupnosť | 75/100 |

## Detailné nálezy

### Výkon — 90/100

- **[CHYBA]** Stratégia načítania skriptov — Len 18 % z 11 skriptov je optimalizovaných - väčšina blokuje vykresľovanie
  - Riešenie: Pridajte defer alebo async na všetky <script src='...'> tagy. Skripty blokujúce vykresľovanie sú jednou z hlavných príčin pomalého FCP. Defer zachováva poradie vykonávania, async nie.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Celková váha stránky — 1.8 MB, 61 požiadaviek (optimálne: <1,5 MB, <50 req)
  - Riešenie: Znížte váhu stránky: skomprimujte obrázky do WebP (ušetrí 30-50 %), zapnite kompresiu textu (gzip/brotli), odložene načítajte obrázky pod viditeľnou časťou, odstráňte nepoužívané CSS/JS.
  - Dôkaz: PSI-lab
- **[UPOZORNENIE]** Nepoužívaný kód (CSS + JS) — 186 KB nepoužívaných (CSS: 60 KB, JS: 126 KB)
  - Riešenie: Odstráňte nepoužívané CSS pomocou PurgeCSS alebo UnCSS. Rozdeľte JavaScript tak, aby sa na každej stránke načítal len potrebný kód. Preverte pluginy - každý pridáva CSS/JS.
  - Dôkaz: PSI-lab
- **[UPOZORNENIE]** Odložené načítanie — 103 obrázkov bez odloženého načítania
  - Riešenie: Pridajte loading='lazy' na všetky obrázky pod viditeľnou časťou stránky. Hero/LCP obrázok nechajte načítavať prednostne. Natívne odložené načítanie podporujú všetky moderné prehliadače.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Stratégia Cache-Control — no-store, no-cache, must-revalidate, no-cache, private
  - Riešenie: Nastavte vhodné cache hlavičky: statické zdroje by mali mať max-age=31536000 s verzionovanými názvami súborov. HTML stránky môžu použiť max-age=0 s ETag na revalidáciu.
  - Dôkaz: HTTP-header
- **[INFO]** Služby tretích strán — Nemerané - PageSpeed pre túto URL nevrátil audit tretích strán
  - Dôkaz: PSI-lab
- **[INFO]** Zdroje blokujúce vykresľovanie — Nezmerané - PageSpeed pre túto URL nevrátil audit zdrojov blokujúcich vykresľovanie
  - Dôkaz: PSI-lab
- **[OK]** Čas odozvy servera (TTFB) — 26 ms
  - Dôkaz: PSI-lab
- **[OK]** First Contentful Paint (FCP) — 1.04 s
  - Dôkaz: PSI-lab
- **[OK]** Largest Contentful Paint (LCP) — 1.23 s - Core Web Vital ✓
  - Dôkaz: PSI-lab
- **[OK]** Total Blocking Time (TBT) — 70 ms
  - Dôkaz: PSI-lab
- **[OK]** Cumulative Layout Shift (CLS) — 0.019 - Core Web Vital ✓
  - Dôkaz: PSI-lab
- **[OK]** Speed Index — 1.19 s
  - Dôkaz: PSI-lab
- **[OK]** Rozpočet JavaScriptu — 239 KB - v rámci rozpočtu 600 KB
  - Dôkaz: PSI-lab · 239 KB JavaScript · istota: high
- **[OK]** Rozpočet požiadaviek — 61 požiadaviek - v rámci rozpočtu 80
  - Dôkaz: PSI-lab · 61 requests · istota: high
- **[OK]** Kompresia textu (gzip/brotli) — Všetky textové zdroje sú správne skomprimované
  - Dôkaz: HTTP-header
- **[OK]** Nápovedy pre zdroje (Preload/Preconnect) — 1 preload, 1 preconnect nápov(ed)
  - Dôkaz: HTML-heuristic
- **[OK]** Podpora HTTP/3 (QUIC) — HTTP/3 zapnuté cez hlavičku Alt-Svc
  - Dôkaz: HTTP-header
- **[OK]** Počet CSS súborov — 6 CSS súbor(ov) - dobre konsolidované
  - Dôkaz: HTML-heuristic

### SEO — 74/100

- **[CHYBA]** Nadpis H1
  - Riešenie: Pridajte presne jednu značku H1 s hlavným kľúčovým slovom. Má to byť najvýraznejší nadpis na stránke.
  - Dôkaz: HTML-heuristic
- **[CHYBA]** Štruktúrované dáta (JSON-LD)
  - Riešenie: Pridajte štruktúrované dáta JSON-LD: schémy Product (s cenou, dostupnosťou, recenziami), Organization, BreadcrumbList a WebSite.
  - Dôkaz: schema
- **[UPOZORNENIE]** Meta title — 25 znakov (optimum: 30-60)
  - Riešenie: Váš title je veľmi krátky. Pridajte výstižné kľúčové slová a názov značky pre lepšie signály hodnotenia.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Meta popis — 10 znakov (optimum: 120-160)
  - Riešenie: Rozšírte popis aspoň na 120 znakov. Zahrňte výhody, výzvu na akciu a cieľové kľúčové slovo.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Twitter/X karty
  - Riešenie: Pridajte značky <meta name='twitter:card' content='summary_large_image'>, twitter:title a twitter:image.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Optimalizácia formátu obrázkov — 0% moderných formátov — 4 JPEG, 6 PNG obrázkov
  - Riešenie: Preveďte všetky obrázky do formátu WebP. Väčšina CMS platforiem má pluginy na automatickú konverziu do WebP. Pre ešte lepšiu kompresiu použite AVIF.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Konzistentnosť kanonickej URL — Canonical smeruje na inú URL: https://www.praktiktextil.sk/
  - Riešenie: Vaša kanonická URL sa nezhoduje s URL aktuálnej stránky. Zabezpečte, aby canonical smeroval na preferovanú verziu (s/bez koncovej lomky, www vs non-www). Nekonzistentné kanonické značky mätú vyhľadávače.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Hlboká hierarchia nadpisov — Žiadne podnadpisy H3 pre dlhý obsah
  - Riešenie: Pridajte pod sekcie H2 podnadpisy H3, aby ste vytvorili hlbšiu hierarchiu obsahu. Pomáha to vyhľadávačom pochopiť podtémy a zvyšuje šancu na featured snippet.
  - Dôkaz: HTML-heuristic
- **[INFO]** Pomer text/HTML — Pomer 2%, ale 1368 slov — obsah je dostatočný; nízky pomer je nafúknuté značkovanie/inline JS, nie tenký obsah
  - Dôkaz: HTML-heuristic
- **[OK]** Štruktúra obsahu (nadpisy H2) — Nájdených 5 podnadpisov H2
  - Dôkaz: HTML-heuristic
- **[OK]** Open Graph značky — og:title, og:description, og:image, og:type
  - Dôkaz: HTML-heuristic
- **[OK]** Formát Open Graph obrázka — image/webp
  - Dôkaz: HTML-heuristic
- **[OK]** Kanonická URL — https://www.praktiktextil.sk/
  - Dôkaz: HTML-heuristic
- **[OK]** robots.txt — Prítomný, odkazuje na sitemap
  - Dôkaz: file-probe
- **[OK]** XML sitemapa — Index sitemáp s 1 podsitemapami
  - Dôkaz: file-probe
- **[OK]** Jazykový atribút HTML — lang="sk"
  - Dôkaz: HTML-heuristic
- **[OK]** Alt atribúty obrázkov — 100% z 103 obrázkov má alt text
  - Dôkaz: HTML-heuristic
- **[OK]** Značka meta robots — index,follow
  - Dôkaz: HTML-heuristic
- **[OK]** Favicon — Favicon zistený
  - Dôkaz: file-probe
- **[OK]** Sémantická štruktúra HTML — 4/6 sémantických prvkov: <nav>, <main>, <header>, <footer>
  - Dôkaz: HTML-heuristic
- **[OK]** Hĺbka obsahu — 1368 slov — dostatočný obsah
  - Dôkaz: HTML-heuristic
- **[OK]** Interné prelinkovanie — 145 interných odkazov — silná navigácia webu
  - Dôkaz: HTML-heuristic
- **[OK]** Prázdne/mŕtve odkazy — 4 drobný(ch) mŕtvy(ch) odkaz(ov) — akceptovateľné
  - Dôkaz: HTML-heuristic
- **[OK]** Základy prístupnosti — 4/4 signálov prístupnosti: 374 ARIA roles, 127 ARIA labels, skip link, lang="sk"
  - Dôkaz: HTML-heuristic
- **[OK]** Aktuálnosť sitemapy — Najnovší <lastmod> pred 0 dňom(dňami)
  - Dôkaz: HTML-heuristic

### Bezpečnosť — 60/100

- **[CHYBA]** HSTS (Strict-Transport-Security)
  - Riešenie: Pridajte hlavičku: Strict-Transport-Security: max-age=31536000; includeSubDomains; preload - potom doménu odošlite na hstspreload.org.
  - Dôkaz: HTTP-header
- **[CHYBA]** Content-Security-Policy (CSP)
  - Riešenie: Nasaďte hlavičku CSP. Začnite s: Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: - potom ju postupne sprísňujte.
  - Dôkaz: HTTP-header
- **[UPOZORNENIE]** CAA DNS záznam — Žiadne CAA záznamy - certifikáty pre túto doménu môže vydať ktorákoľvek certifikačná autorita
  - Riešenie: Zverejnite CAA TXT záznamy, ktoré pripnú vašu certifikačnú autoritu. Pre Let's Encrypt: `0 issue "letsencrypt.org"`. Pre viacero autorít pridajte ďalšie `0 issue "..."` záznamy. Pridajte `0 iodef "mailto:security@yourdomain.tld"` pre hlásenia o chybnom vydaní.
  - Dôkaz: DNS
- **[UPOZORNENIE]** Presmerovanie HTTP → HTTPS
  - Riešenie: Nastavte presmerovanie 301 z http:// na https:// pre všetky stránky. V Apache: RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
  - Dôkaz: HTTP-header
- **[UPOZORNENIE]** Referrer-Policy
  - Riešenie: Pridajte hlavičku: Referrer-Policy: strict-origin-when-cross-origin - je to najlepší kompromis medzi funkčnosťou a súkromím.
  - Dôkaz: HTTP-header
- **[UPOZORNENIE]** Permissions-Policy
  - Riešenie: Pridajte: Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=() - vypnite API, ktoré vaša stránka nepotrebuje.
  - Dôkaz: HTTP-header
- **[UPOZORNENIE]** Bezpečnostné príznaky cookies — 3 cookie: 2 missing HttpOnly, 2 missing SameSite
  - Riešenie: Nastavte všetky cookies s: Secure (len cez HTTPS), HttpOnly (neprístupné z JS), SameSite=Lax alebo Strict (ochrana pred CSRF). Session cookies MUSIA mať všetky tri.
  - Dôkaz: HTTP-header
- **[UPOZORNENIE]** Subresource Integrity (SRI) — Len 0/7 skriptov tretích strán vhodných pre SRI má integrity hashe (1 auto-updating provider script(s) excluded — SRI not applicable)
  - Riešenie: K verziovo pripnutým <script> značkám tretích strán pridajte integrity='sha384-...' a crossorigin='anonymous' (použite srihash.org). Automaticky aktualizované skripty poskytovateľov (analytika, platobné SDK, nástroje na súhlas) sú správne vylúčené - SRI použiť nemôžu.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Ochrana CDN / WAF
  - Riešenie: Pridajte CDN/WAF ako Cloudflare (bezplatná úroveň), Sucuri alebo Fastly. Poskytujú ochranu pred DDoS, filtrovanie botov a správu SSL.
  - Dôkaz: HTTP-header
- **[INFO]** Bezpečnosť prefixu cookies — 1 session cookie už má Secure + HttpOnly + SameSite; pridanie prefixu __Host- je len kozmetické spevnenie
  - Dôkaz: HTTP-header · 1 session cookie(s), all with Secure+HttpOnly+SameSite · istota: low
- **[OK]** SSL/TLS certifikát — Platné HTTPS spojenie nadviazané
  - Dôkaz: SSL
- **[OK]** DNSSEC podpísanie zóny — Zóna je podpísaná cez DNSSEC (DNSKEY je zverejnený)
  - Dôkaz: DNS
- **[OK]** Ochrana pred clickjackingom — X-Frame-Options: SAMEORIGIN, SAMEORIGIN
  - Dôkaz: HTTP-header
- **[OK]** X-Content-Type-Options — nosniff
  - Dôkaz: HTTP-header
- **[OK]** Prezradenie technológie — Server: openresty (bez verzie)
  - Dôkaz: HTTP-header
- **[OK]** security.txt (RFC 9116) — Prítomný na /.well-known/security.txt
  - Dôkaz: file-probe
- **[OK]** Prezradenie verzie servera — openresty - verzia je skrytá
  - Dôkaz: HTTP-header
- **[OK]** Bezpečnosť poľa pre heslo — 1 pole/polí pre heslo - povoľujú automatické vypĺňanie správcom hesiel
  - Dôkaz: HTTP-header

### Mobil — 70/100

- **[UPOZORNENIE]** Skóre mobilného výkonu — 66/100 (cieľ: 90+)
  - Riešenie: Optimalizujte pre mobil: komprimujte obrázky do WebP, odložte nekritický JS, zmenšite veľkosť CSS. Mobilné procesory sú niekoľkonásobne pomalšie než desktopové — čo je rýchle na desktope, je pomalé na mobile.
  - Dôkaz: PSI-lab
- **[UPOZORNENIE]** Veľkosť dotykových cieľov — Some tappable targets are too small or too close together (Lighthouse tap-targets audit)
  - Riešenie: Zabezpečte, aby VŠETKY interaktívne prvky (tlačidlá, odkazy, formulárové polia) mali aspoň 48×48px a minimálny rozostup 8px medzi sebou. Zvláštnu pozornosť venujte: navigačným menu, filtrovacím tlačidlám, výberom variantov produktu a odkazom v pätičke.
  - Dôkaz: PSI-lab · Some tappable targets are too small or too close together (Lighthouse tap-targets audit)
- **[UPOZORNENIE]** Čitateľnosť veľkosti písma — Some text renders below the 12px legibility threshold (Lighthouse font-size audit)
  - Riešenie: Audit Google font-size označuje text pod 12px. Nájdite malý text (často fine-print v pätičke, popisky alebo cookie oznam) a zväčšite ho; cieľte 16px+ základné písmo s relatívnymi jednotkami (rem/em), aby všetok text bol na mobile čitateľný.
  - Dôkaz: PSI-lab · Some text renders below the 12px legibility threshold (Lighthouse font-size audit)
- **[UPOZORNENIE]** Responzívne obrázky (srcset) — 103 obrázkov bez responzívnej veľkosti
  - Riešenie: Pridajte atribúty srcset a sizes k tagom <img>, aby sa pre každú obrazovku servíroval vhodne veľký obrázok. Mobilné zariadenia by nemali sťahovať 1920px desktopové obrázky.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Apple mobile web app — Chýba: apple-mobile-web-app-capable, status-bar-style
  - Riešenie: Pridajte: <meta name='apple-mobile-web-app-capable' content='yes'>, <meta name='apple-mobile-web-app-status-bar-style' content='default'>, <link rel='apple-touch-icon' href='/icon-180.png'>.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Mobilné pripnuté CTA — Tlačidlo do košíka nájdené, ale nedetekované pripnuté/fixné pozicovanie
  - Riešenie: Pridajte pripnutý panel s tlačidlom do košíka na spodok mobilných obrazoviek. Použite position: sticky alebo position: fixed s bottom: 0. CTA by malo byť vždy viditeľné bez skrolovania.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Spracovanie pretečenia textu — Nedetekované CSS word-break/overflow-wrap
  - Riešenie: Pridajte 'overflow-wrap: break-word' do body alebo hlavného kontajnera obsahu. Bez neho môžu dlhé URL, produktové SKU alebo dlhé zložené slová rozbiť mobilné rozloženia.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Tlačový štýl — Stránka objednávky/faktúry bez tlačových štýlov
  - Riešenie: Pridajte CSS pravidlá @media print na skrytie navigácie, reklám a nepodstatných prvkov. Zabezpečte, aby boli detaily objednávky, ceny a firemné údaje viditeľné pri tlači.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Hierarchia nadpisov (WCAG 1.3.1) — Preskočené úrovne: h2→h4
  - Riešenie: Dodržuj poradie nadpisov h1 → h2 → h3 → h4 bez preskočenia. Screen readers používajú hierarchiu nadpisov na navigáciu. Ak potrebuješ menšie písmo ale rovnakú úroveň, použi CSS triedu, nie nižší heading tag.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Kvalita textu odkazov (WCAG 2.4.4) — 12 odkazov má generický text ("click here", "more", "tu"...)
  - Riešenie: Nahraď 'Click here' / 'Read more' / 'Viac' popisným textom: 'Prečítaj si viac o GDPR', 'Pozri cenník modulov'. Screen readers čítajú odkazy mimo kontextu — samostatné 'viac' nemá význam.
  - Dôkaz: HTML-heuristic
- **[INFO]** PWA funkcie — Manifest webovej aplikácie je prítomný; service worker sa v HTML nenašiel — môže byť registrovaný v externom JavaScripte, ktorý tento sken nesťahuje
  - Dôkaz: HTML-heuristic
- **[INFO]** SK/CZ lokálne platobné metódy — Žiadna SK/CZ local payment metóda nedetekovaná na homepage — bankové tlačidlá/QR sa zvyčajne zobrazia až v checkoute
  - Dôkaz: HTML-heuristic
- **[OK]** Konfigurácia viewportu — width=device-width, initial-scale=1
  - Dôkaz: HTML-heuristic
- **[OK]** Obsah sa zmestí do viewportu — Nie je potrebné horizontálne skrolovanie
  - Dôkaz: HTML-heuristic
- **[OK]** Techniky responzívneho dizajnu — Detekované: Flexbox, Media queries
  - Dôkaz: HTML-heuristic
- **[OK]** Farba témy — Meta tag theme-color je prítomný
  - Dôkaz: HTML-heuristic
- **[OK]** Mobilná navigácia (sémantická) — Element <nav> je prítomný — správny navigačný orientačný bod
  - Dôkaz: HTML-heuristic
- **[OK]** Typy formulárových polí — Optimalizované: 2 email, 1 search
  - Dôkaz: HTML-heuristic
- **[OK]** Detekované platobné metódy — 2 metód: Apple Pay, Google Pay
  - Dôkaz: HTML-heuristic
- **[OK]** Express checkout (Apple Pay + Google Pay) — Obe express metódy aktívne — -1 click checkout na mobile
  - Dôkaz: HTML-heuristic
- **[OK]** Labely formulárových polí (WCAG 3.3.2) — 44/44 inputs majú label
  - Dôkaz: HTML-heuristic

### AI pripravenosť — 59/100

- **[CHYBA]** Základ štruktúrovaných dát
  - Riešenie: Ihneď pridajte štruktúrované dáta JSON-LD. Poradie priority: 1) Organization, 2) Product (s offers), 3) BreadcrumbList, 4) WebSite+SearchAction, 5) FAQPage. Používajte výhradne formát JSON-LD — nie Microdata ani RDFa.
  - Dôkaz: schema
- **[CHYBA]** Schéma Organization + prepojenie entity
  - Riešenie: Pridajte schému Organization (alebo LocalBusiness pre kamenné predajne) s: name, logo, url, description, contactPoint, address a sameAs s odkazmi na všetky vaše oficiálne profily (LinkedIn, Facebook, prípadne Wikipedia).
  - Dôkaz: schema
- **[CHYBA]** Hierarchia nadpisov pre AI — 0 H1, 5 H2, 0 H3 — slabá štruktúra
  - Riešenie: Použite presne 1 H1 (názov stránky), potom usporiadajte obsah sekciami H2 a podsekciami H3. Každý nadpis by mal opisovať obsah, ktorý nasleduje. Nikdy nepreskakujte úrovne nadpisov (H1→H3 bez H2).
  - Dôkaz: HTML-heuristic
- **[CHYBA]** Signály aktuálnosti obsahu
  - Riešenie: Do schémy JSON-LD pridajte dateModified a datePublished a na stránke zobrazte viditeľný dátum 'Naposledy aktualizované'. Obsah aktualizujte minimálne raz za štvrťrok. AI výrazne uprednostňuje čerstvý, udržiavaný obsah.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Správanie pri nulových výsledkoch — Vyhľadávanie bez zhody vyzerá ako slepá ulička
  - Riešenie: Na stránke bez výsledkov ukážte najpredávanejšie alebo položky z najbližšej kategórie, ponúknite opravu preklepu a dajte priamu cestu opýtať sa (chat, telefón, formulár). Logujte dotazy s nulovým výsledkom - je to zadarmo zoznam toho, čo zákazníci chcú a vy to buď nemáte, alebo to voláte inak.
  - Dôkaz: HTML-heuristic · 199088 B response · https://praktiktextil.sk/action/ProductSearch/prepareString/?string=xyzqwerty-nezmysel · istota: low
- **[UPOZORNENIE]** Schéma FAQ (priame odpovede pre AI)
  - Riešenie: Pridajte schému FAQPage na každú stránku produktu a kategórie. Uveďte 3-5 otázok a odpovedí na stránku k témam: špecifikácie produktu, doprava, vrátenie, návod na použitie. Formát: otázka (celá veta) + odpoveď (75-150 slov).
  - Dôkaz: schema
- **[UPOZORNENIE]** Schéma Breadcrumb
  - Riešenie: Pridajte schému BreadcrumbList odrážajúcu hierarchiu kategórií: Domov → Kategória → Podkategória → Produkt. Každá položka potrebuje name a URL.
  - Dôkaz: schema
- **[UPOZORNENIE]** Schéma vyhľadávania (SearchAction)
  - Riešenie: Pridajte schému WebSite s potentialAction: SearchAction. Definujte šablónu URL vyhľadávania, aby AI asistenti a Google dokázali programovo prehľadávať váš obchod.
  - Dôkaz: schema
- **[UPOZORNENIE]** Formát obsahu s odpoveďou hneď na začiatku — Obsah nezačína silným zhrňujúcim odsekom
  - Riešenie: Najdôležitejšie informácie umiestnite do prvých 100 slov stránky. Použite metódu BLUF (podstata na začiatok): začnite tým, ČO produkt je a prečo je dôležitý, a potom rozveďte.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Štruktúrovaný obsah (zoznamy a tabuľky) — Nájdené: 46 lists — zvážte pridanie: comparison tables
  - Riešenie: Do obsahu pridajte comparison tables. Použite <ul>/<ol> na zoznamy vlastností, špecifikácie a výhody. Použite <table> na porovnania produktov, cenové úrovne a špecifikácie. AI extrahuje štruktúrovaný obsah oveľa rýchlejšie než odseky.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Jasnosť entity a signály značky — OG tagy úplné, ale bez sameAs odkazov na entitu
  - Riešenie: Pre plnú jasnosť entity: 1) doplňte Open Graph tagy (og:title, og:description, og:image, og:type), 2) pridajte sameAs do schémy Organization s odkazmi na Wikipedia, LinkedIn, Facebook a ďalšie profily.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Signály odbornosti autora (E-E-A-T)
  - Riešenie: Pre obsahové stránky (blog, sprievodcovia, o nás): pridajte schému Article/BlogPosting s vlastnosťou author prepojenou na schému Person. Uveďte autorovu pozíciu (jobTitle), kvalifikáciu a sociálne profily.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Produktový feed (AI komercia)
  - Riešenie: Vytvorte produktový feed pre Google Merchant Center (XML alebo CSV). Sprístupnite ho na stálej URL a odkážte naň v sitemape. AI nákupní asistenti a porovnávače používajú produktové feedy na objavovanie katalógu. Tip: feedy Heureka / Zboží / Glami / Merchant si zdarma overíte auditom Mergado.
  - Dôkaz: file-probe · probed /feed/products.xml, /google-shopping.xml, /export/google-shopping.xml — none returned a product feed
- **[UPOZORNENIE]** Heureka XML feed
  - Riešenie: Vygeneruj Heureka XML feed na /feed/heureka.xml (alebo /export/heureka.xml). PrestaShop má modul Heureka.cz, WooCommerce má pluginy. Štruktúra: <SHOP><SHOPITEM>...</SHOPITEM></SHOP> s ITEM_ID/PRODUCTNAME/URL/PRICE_VAT/CATEGORYTEXT (povinné) + EAN/PARAM/DELIVERY_DATE (highly recommended pre ranking).
  - Dôkaz: file-probe
- **[UPOZORNENIE]** Extrahovateľné bloky odpovedí — 2 odsekov, priemer 16 slov — príliš krátke na citovanie
  - Riešenie: Optimálne odseky na citovanie v AI majú 40-80 slov. Dlhé odseky rozdeľte na sústredené, samostatné bloky odpovedí. Každý by mal vyjadriť jednu jasnú myšlienku, ktorú AI dokáže extrahovať a citovať.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Optimalizácia dĺžky sekcií — Priemerná sekcia: 474 slov — len 0% v optimálnom rozsahu 80-200 slov
  - Riešenie: Preusporiadajte obsah do sekcií po 120-180 slov medzi nadpismi H2/H3. Každá sekcia by mala úplne pokryť jednu tému. Sekcie nad 300 slov rozdeľte, sekcie pod 80 slov rozšírte.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Nadpisy vo formáte otázka-odpoveď
  - Riešenie: Pridajte nadpisy H2/H3 formulované ako otázky vašich zákazníkov: 'Koľko stojí doprava?', 'Aké veľkosti sú dostupné?', 'Ako vrátim tovar?' Za každým uveďte priamu, stručnú odpoveď.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Pokrytie bežných otázok — Odpovedá na 3/5 — chýba: shipping, payment
  - Riešenie: Pridajte jasný obsah odpovedajúci na otázky nakupujúcich (a AI asistentov): ceny, možnosti a cena dopravy, podmienky vrátenia/refundácie, dostupnosť na sklade a akceptované spôsoby platby. Ideálna je viditeľná sekcia FAQ alebo informačná sekcia, ktorá ich pokrýva.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Kanonický tag pre dedupláciu v AI — Kanonický tag ukazuje na inú URL: https://www.praktiktextil.sk/
  - Riešenie: Overte, či je tento kanonický tag zámerný. AI modely zoskupujú takmer duplicitné URL a vyberú jednu reprezentatívnu stránku. Ak kanonický tag ukazuje na inú URL, AI zaindexuje len tú cieľovú URL, nie túto stránku.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Schéma podmienok vrátenia
  - Riešenie: Pridajte schému MerchantReturnPolicy s: returnPolicyCategory (napr. MerchantReturnFiniteReturnWindow), merchantReturnDays, returnMethod, returnFees. Prepojte ju z Product/Offer cez hasMerchantReturnPolicy.
  - Dôkaz: schema
- **[UPOZORNENIE]** Schéma detailov dopravy
  - Riešenie: Pridajte schému OfferShippingDetails s: shippingRate, shippingDestination, deliveryTime (handlingTime + transitTime). AI agenti znižujú prioritu produktom bez informácií o doprave.
  - Dôkaz: schema
- **[UPOZORNENIE]** Pripravenosť na Knowledge Graph — 1/4 signálov — chýba: @id in JSON-LD, sameAs links (Wikipedia, LinkedIn), Organization schema
  - Riešenie: Pridajte: @id in JSON-LD, sameAs links (Wikipedia, LinkedIn), Organization schema. Použite @id v JSON-LD na vytvorenie jedinečného identifikátora uzla. Zabezpečte, aby bol názov značky identický v title, schéme a OG tagoch. Odkážte na Wikipedia/Wikidata cez sameAs.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Čitateľnosť obsahu pre AI — Grade 20 — príliš zložité pre široké citovanie v AI (technický prah: 14)
  - Riešenie: Zjednodušte vety (cieľ priemer 15-20 slov), používajte bežné slová, zložité myšlienky rozdeľte do kratších odsekov. AI extrahuje obsah pre široké publikum — ak je príliš akademický, AI ho preskočí.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Kvalita alt textu obrázkov pre AI — 71% dobrých, 17 slabých, 0 chýbajúcich
  - Riešenie: Vylepšite alt text: použite 3-15 popisných slov na obrázok. Uveďte názov produktu, kľúčovú vlastnosť a kontext. Zle: 'image1' alebo 'photo'. Dobre: 'Červená kožená peňaženka s RFID ochranou — pohľad spredu'.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Odborné citáty a citácie
  - Riešenie: Na každú hlavnú stránku pridajte 2-3 odborné citáty alebo dátové citácie. Použite <blockquote> na citáty a odkazujte na autoritatívne zdroje (.gov, .edu, Wikipedia, odvetvové správy).
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Pripravenosť na agentov WebMCP
  - Riešenie: WebMCP (štandard W3C Community Group, Chrome 146+) umožňuje stránkam deklarovať štruktúrované nástroje pre AI agentov. Pridajte atribúty toolname a tooldescription k prvkom <form> alebo vložte manifest <script type='application/webmcp+json'>.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Trust widget — Žiaden trust widget (Heureka / Trustpilot / AggregateRating) nedetekovaný
  - Riešenie: Pre SK/CZ shopy: inštaluj Heureka Ověřeno zákazníky widget (zadarmo pre overených predajcov — https://sluzby.heureka.sk). Alternatívne: Trustpilot, Google Reviews s AggregateRating schema. Trust widget na product + kategória + footer.
  - Dôkaz: HTML-heuristic
- **[INFO]** llms.txt (popis stránky pre AI) — Not present — not required for AI visibility
  - Dôkaz: file-probe
- **[INFO]** llms-full.txt (kompletný obsah pre AI) — Not present — not required for AI visibility
  - Dôkaz: file-probe
- **[INFO]** Úplnosť schémy Product — Na tejto stránke (homepage) nie je schéma Product — schéma Product patrí na detailné stránky produktov, ktoré tento sken jednej URL nenavštívil
  - Dôkaz: schema
- **[INFO]** Správanie vyhľadávania pri preklepe (meranie) — Správne napísaný dotaz a ten istý s preklepom vracajú podobne veľké stránky (199088 B vs 199088 B) - konzistentné s toleranciou preklepov
  - Dôkaz: HTML-heuristic · 199088 B response · https://praktiktextil.sk/action/ProductSearch/prepareString/?string=xyzqwerty-nezmysel · istota: low
- **[INFO]** Schéma recenzií a hodnotení — Na tejto stránke (homepage) nie je schéma recenzií — schéma recenzií/hodnotení zvyčajne patrí na stránky produktov
  - Dôkaz: schema
- **[INFO]** Manifest AI pluginu — Not present — not required (the ChatGPT-plugins manifest was retired in 2024)
  - Dôkaz: file-probe
- **[INFO]** Pokrytie GTIN/EAN — Nevzorkovali sme žiadny produktový feed - pokrytie GTIN/EAN sa nedalo overiť
  - Dôkaz: HTML-heuristic
- **[INFO]** Speakable obsah (hlasová AI) — Not present — optional; SpeakableSpecification has limited assistant adoption
  - Dôkaz: HTML-heuristic
- **[INFO]** ai.txt (povolenia pre AI) — Not present — optional; AI-bot permissions are enforced via robots.txt, not ai.txt
  - Dôkaz: file-probe
- **[INFO]** Pripravenosť pre AI agentov — 50/100 — čiastočne pripravené (Access 100 · Understand 0 · Discover 50 · Transact 50)
- **[INFO]** Agent: Prístup — dostane sa agent dnu — 100/100 (2 signálov)
- **[INFO]** Agent: Porozumenie — rozumie produktom — 0/100 (2 signálov)
- **[INFO]** Agent: Objaviteľnosť — nájde celý katalóg — 50/100 (3 signálov)
- **[INFO]** Agent: Transakcia — vie konať (kôš, podmienky) — 50/100 (3 signálov)
- **[OK]** Prístup AI botov — No AI bot restrictions (allowed by default)
  - Dôkaz: file-probe
- **[OK]** Prístup AI agentov (naživo) — ChatGPT-User a PerplexityBot dostanú tú istú stránku ako prehliadač
  - Dôkaz: file-probe · ChatGPT-User, PerplexityBot: same page as a browser · https://praktiktextil.sk
- **[OK]** Dostupnosť obsahu pre AI — 1368 slov v surovom HTML (2.3% pomer textu) — čitateľné pre AI crawlery bez spustenia JS
  - Dôkaz: HTML-heuristic
- **[OK]** Hĺbka obsahu pre AI — 1368 slov — bohatý obsah pre analýzu a citovanie AI
  - Dôkaz: HTML-heuristic
- **[OK]** Sémantická štruktúra HTML — 4/6 sémantických prvkov: <nav>, <main>, <header>, <footer>
  - Dôkaz: HTML-heuristic
- **[OK]** Prítomnosť štatistík a dát — Nájdených 22 dátových bodov — silný magnet na citácie
  - Dôkaz: HTML-heuristic
- **[OK]** Hustota interných odkazov — 106 kontextových interných odkazov na 1 000 slov — silný signál pre knowledge graph
  - Dôkaz: HTML-heuristic
- **[OK]** Pomer obsahu k šablónovému textu — 63% textu v <main>/<article> — čistý signál obsahu
  - Dôkaz: HTML-heuristic

### GDPR — 80/100

- **[CHYBA]** Odkazy na riešenie spotrebiteľských sporov — Nenájdený žiadny odkaz na platformu EÚ ODR ani na dozorný orgán
  - Riešenie: Pridajte odkaz na platformu EÚ ODR (https://ec.europa.eu/consumers/odr) a na váš národný orgán (SK: Slovenská obchodná inšpekcia / soi.sk, CZ: Česká obchodní inspekce / coi.cz) do päty a obchodných podmienok.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Zásady používania cookies
  - Riešenie: Vytvorte samostatnú stránku so zásadami cookies, ktorá uvádza každý cookie podľa: názvu, poskytovateľa, účelu, kategórie (nevyhnutné/analytické/marketingové) a doby platnosti. Väčšina CMP ju vygeneruje automaticky.
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Právny kontakt / stránka Impressum
  - Riešenie: Pridajte stránku Impressum / O nás s údajmi: názov spoločnosti, sídlo, kontaktný email, IČ DPH a údaje z obchodného registra. V Nemecku/Rakúsku/Švajčiarsku je to zákonná povinnosť (Impressumspflicht).
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Právo na výmaz (vymazanie údajov)
  - Riešenie: Poskytnite používateľom jasný spôsob, ako požiadať o vymazanie údajov — samostatnú stránku, formulár alebo výslovné pokyny v zásadách ochrany súkromia. V nastaveniach účtu doplňte možnosť „Vymazať môj účet".
  - Dôkaz: HTML-heuristic
- **[UPOZORNENIE]** Omnibus zverejnenie ceny (30-dňové minimum) — Zľavy sú zobrazené bez viditeľného odkazu na „najnižšiu cenu za posledných 30 dní"
  - Riešenie: Vždy, keď inzerujete zníženie ceny, zobrazte vedľa novej ceny najnižšiu cenu uplatnenú v 30 dňoch pred zľavou. V PrestaShope pridajte kotvu 30-dňovej histórie cien (napr. náš modul zu_pricehistory), aby bol každý štítok zľavy automaticky v súlade.
  - Dôkaz: HTML-heuristic · istota: low
- **[INFO]** Funkcia na odstúpenie od zmluvy — V serverovom HTML nie je explicitné tlačidlo na odstúpenie — môže byť v prihlásenej zákazníckej sekcii / detaile objednávky, kam tento sken nedovidí. Overte, že ho máte.
  - Dôkaz: HTML-heuristic · istota: low
- **[INFO]** Oznámenie o zákonnej záruke — Na naskenovaných stránkach sme harmonizované oznámenie o zákonnej záruke nenašli — môže byť na stránke, ktorú tento sken neotvára. Overte, že je zobrazené.
  - Dôkaz: HTML-heuristic · istota: low
- **[OK]** Banner súhlasu s cookies (CMP) — Zistené: Cookiebot
  - Dôkaz: HTML-heuristic
- **[OK]** Sledovacie skripty a súhlas — Nezistené žiadne sledovacie skripty
  - Dôkaz: HTML-heuristic
- **[OK]** Stránka so zásadami ochrany súkromia — /podmienky-ochrany-osobnych-udajov/
  - Dôkaz: HTML-heuristic
- **[OK]** Stránka Obchodné podmienky — /obchodne-podmienky/
  - Dôkaz: HTML-heuristic
- **[OK]** Šifrovanie údajov (žiadny zmiešaný obsah) — Všetky zdroje sú načítané cez HTTPS
  - Dôkaz: HTML-heuristic
- **[OK]** Zdieľanie údajov s tretími stranami — 2 domén tretích strán
  - Dôkaz: HTML-heuristic
- **[OK]** Súhlas s newsletterom — Zistený formulár newslettra s mechanizmom súhlasu
  - Dôkaz: HTML-heuristic
- **[OK]** Kontakt na zodpovednú osobu (DPO) — Nájdený kontakt na DPO / ochranu údajov
  - Dôkaz: HTML-heuristic
- **[OK]** Mechanizmus odvolania súhlasu — Nájdený mechanizmus odvolania súhlasu / opt-out
  - Dôkaz: HTML-heuristic
- **[OK]** Politika odstúpenia a reklamácií — Uvedené právo na odstúpenie + reklamačný postup
  - Dôkaz: HTML-heuristic

### Zraniteľnosti — 59/100

- **[CHYBA]** Známe zraniteľnosti (CVE) — 5 CVEs spojených s 1 zistenými verziami komponentov
  - Riešenie: Update jQuery 1.11.3 → 3.7.1 (CVE-2011-4969, CVE-2012-6708, CVE-2015-9251, CVE-2020-11022, CVE-2020-11023). Každú overte pred zásahom — hosting alebo distribúcia môže backportovať bezpečnostnú záplatu, kým reťazec verzie stále vyzerá zraniteľne, takže zistené CVE nie je dôkazom, že vaša inštalácia je zasiahnutá. Detaily CVE: CVE-2011-4969: https://nvd.nist.gov/vuln/detail/CVE-2011-4969 · CVE-2012-6708: https://nvd.nist.gov/vuln/detail/CVE-2012-6708 · CVE-2015-9251: https://nvd.nist.gov/vuln/detail/CVE-2015-9251 · CVE-2020-11022: https://nvd.nist.gov/vuln/detail/CVE-2020-11022 · CVE-2020-11023: https://nvd.nist.gov/vuln/detail/CVE-2020-11023
  - Dôkaz: file-probe · istota: low
- **[CHYBA]** Admin panel na predvolenej URL — Dostupný na: /admin
  - Riešenie: Premenujte admin adresár na náhodnú, neuhádnuteľnú cestu (napr. /admin-x7k9m2). Pridajte IP whitelist cez .htaccess, zaveďte 2FA a nastavte ochranu proti brute-force (fail2ban alebo podobné).
  - Dôkaz: file-probe
- **[CHYBA]** Verzia jQuery — jQuery 1.11.3 — kriticky zastarané!
  - Riešenie: jQuery 1.11.3 je spojené s viacerými známymi bezpečnostnými zraniteľnosťami. Aktualizujte na 3.7.x. Ak vaše pluginy vyžadujú jQuery 1.x/2.x, použite jquery-migrate ako dočasný mostík.
  - Dôkaz: file-probe · istota: low
- **[CHYBA]** Zabezpečenie platobnej stránky — Platobnej stránke chýba: No HSTS, No CSP
  - Riešenie: KRITICKÉ: Vašej platobnej stránke chýbajú bezpečnostné hlavičky: No HSTS, No CSP. Požiadavka PCI DSS 6.5 nariaďuje ochranu proti bežným zraniteľnostiam na stránkach spracúvajúcich údaje o kartách.
  - Dôkaz: file-probe
- **[UPOZORNENIE]** Ochrana formulárov CSRF — 38/40 formulárov má CSRF tokeny
  - Riešenie: Zabezpečte, aby VŠETKY formuláre obsahovali CSRF token. V PrestaShope použite {$csrf_token} v šablónach. Vo WordPress použite wp_nonce_field().
  - Dôkaz: HTML-heuristic · istota: low
- **[UPOZORNENIE]** Odhalenie inline JavaScriptu — 50 KB inline JavaScriptu
  - Riešenie: Presuňte inline skripty do externých súborov. Inline JavaScript rozširuje útočnú plochu pre XSS a sťažuje implementáciu CSP (vyžaduje unsafe-inline).
  - Dôkaz: HTML-heuristic · istota: low
- **[UPOZORNENIE]** DMARC politika (autentifikácia e-mailu) — DMARC nastavené na p=none (len monitorovanie, bez vynucovania)
  - Riešenie: Zmeňte DMARC politiku z p=none na p=quarantine alebo p=reject. p=none len monitoruje — neblokuje sfalšované e-maily. Začnite s quarantine, potom prejdite na reject po overení, že legitímne e-maily prechádzajú.
  - Dôkaz: DNS
- **[UPOZORNENIE]** DKIM podpisovanie (autentifikácia e-mailu)
  - Riešenie: Nastavte DKIM podpisovanie cez vášho e-mailového poskytovateľa (Google Workspace, Microsoft 365, Mailchimp, SendGrid). Zverejnite verejný DKIM kľúč ako TXT záznam na <selector>._domainkey.vasadomena.com.
  - Dôkaz: file-probe
- **[UPOZORNENIE]** Izolácia medzi pôvodmi
  - Riešenie: Pridajte hlavičky Cross-Origin-Opener-Policy: same-origin a Cross-Origin-Resource-Policy: same-origin. Chránia pred side-channel útokmi typu Spectre.
  - Dôkaz: HTTP-header
- **[UPOZORNENIE]** Zabezpečenie prihlasovacieho formulára — Prihlasovací formulár blokuje automatické vyplnenie správcom hesiel
  - Riešenie: Odstráňte autocomplete='off' z prihlasovacích formulárov. Správcovia hesiel zlepšujú bezpečnosť tým, že umožňujú unikátne, zložité heslá pre každý web.
  - Dôkaz: file-probe
- **[OK]** Odhalenie verzie CMS — Žiadny generator tag — identita CMS je skrytá
  - Dôkaz: HTML-heuristic
- **[OK]** Odhalené citlivé súbory — .env, .git, composer.json — všetky správne zablokované
  - Dôkaz: file-probe
- **[OK]** Odhalený inštalačný skript — Žiadne cesty /install/ ani /setup/ nie sú dostupné
  - Dôkaz: file-probe
- **[OK]** Výpis adresárov — Vypnutý — štruktúra súborov je skrytá
  - Dôkaz: file-probe
- **[OK]** Debug režim / odhalenie chýb — Vo výstupe stránky sa nenašli žiadne debug indikátory
  - Dôkaz: HTML-heuristic
- **[OK]** SPF záznam (zabezpečenie e-mailu) — SPF nakonfigurované: v=spf1 a mx include:_spf.webhouse.sk mx include:_spf.myshoptet.com include:serve
  - Dôkaz: DNS

### NIS2

- **[INFO]** Súlad s NIS2 — Mimo pôsobnosti — vaša firma je pod prahmi NIS2 (sektor podľa prílohy I/II + 50+ zamestnancov / obrat 10M€+).

### Prístupnosť — 75/100

- **[CHYBA]** Štruktúra nadpisov — Stránka nemá nadpis <h1>
  - Riešenie: Pridajte práve jeden <h1> popisujúci stránku, potom <h2>/<h3> v poradí bez preskakovania úrovní.
  - Dôkaz: HTML-heuristic
- **[INFO]** Právny základ EAA — Spadáte pod Európsky akt o prístupnosti (účinný od 28. 6. 2025): SK zákon 351/2022 Z. z., CZ zákon 424/2023 Sb., smernica (EÚ) 2019/882 — hodnotené podľa EN 301 549. Inger poskytuje audity a nápravu EAA.
- **[OK]** Jazyk stránky — <html lang="sk"> je nastavený
  - Dôkaz: HTML-heuristic
- **[OK]** Alt texty obrázkov — Všetkých 103 obrázkov má atribút alt
  - Dôkaz: HTML-heuristic
- **[OK]** Označenia polí — Všetkých 44 polí je označených
  - Dôkaz: HTML-heuristic
- **[OK]** Text odkazov — Odkazy majú popisný text
  - Dôkaz: HTML-heuristic · istota: low
- **[OK]** Orientačné oblasti — Sémantické oblasti prítomné (<main>, <nav>/<header>)
  - Dôkaz: HTML-heuristic
- **[OK]** Priblíženie a mierka — Priblíženie nie je zakázané
  - Dôkaz: HTML-heuristic
- **[OK]** Odkaz na preskočenie — Odkaz na preskočenie na obsah je prítomný
  - Dôkaz: HTML-heuristic · istota: low

---

Zulien Score je bezplatný automatizovaný heuristický audit pokrývajúci výkon (Core Web Vitals, TTFB, page weight), SEO (meta tagy, štruktúrované dáta, sitemap), bezpečnosť (SSL/TLS, HSTS, CSP), mobilnú použiteľnosť, AI pripravenosť, súlad s GDPR / ePrivacy a zraniteľnosti. Výsledky sú cache-ované na 6 hodín a re-skenovateľné na požiadanie.

[Zobraziť plnú interaktívnu správu na Zulien Score →](https://score.zulien.sk/cs/r/praktiktextil.sk)
