Ondřej Meier - SEO specialista a projektový manager

Strukturovaná data pro SEO – kompletní návod

Technické SEO
návod na implementaci strukturovaných dat

Strukturovaná data jsou metadata popisující význam jednotlivých elementů webové stránky. Umožňují robotům vyhledávačů lépe pochopit, parsovat a interpretovat zdrojový kód. Pro SEO představují 2 hlavní přínosy. Umožňují zobrazit rozšířené výsledky vyhledávání (Rich Snippets) v SERPu a přispívají k autoritě celého webu.

Pro Google oficiálně nejsou přímým hodnotícím faktorem. Pozitivně ovlivňují výsledky vyhledávání nepřímo, na konci článku si vysvětlíme jak.

Použití jednotlivých typů strukturovaných dat definuje specifikace schema.org, za kterou stojí společná snaha Google, Yahoo, Microsoftu a Yandexu. Snaha sjednotit tvorbu sémanticých webů.

Formáty strukturovaných dat

Pro přidání strukturovaných dat můžete využít 3 formáty – RDFa, Microdata a JSON-LD. Každý z nich má své výhody i nevýhody. V současnosti je nejlepším řešením JSON-LD, který doporučuje i samotný Google.

RDFa a Microdata

Označují HTML elementy přímo v místě jejich výskytu ve zdrojovém kódu. Programátoři proto musí najít a “obalit” všechny prvky samostatně. Zadání i zpracování je zbytečně složité a časově náročné.

Pro použití se hodí jen na WordPressu, kde za vás veškerou práci udělá samotný plugin.

JSON-LD

S doporučením formátu JSON-LD se jednoznačně připojuji ke Googlu. Jednodušší a rychlejší implementace i opravy se stejným výsledkem jako ostatní formáty.

Do hlavičky stránky přidáte 1 skript, který se postará o popsání všech specifikovaných elementů. Nemusíte zbytečně trápit programátora, což se vám vrátí v podobě rychlejšího a levnějšího zpracování.

Další výhodou je možnost přidání tohoto kódu do kontejneru GTM (Google Tag Manager) a obejít tak programátory úplně. Může to dávat smysl u malý webových prezentací, kde nepotřebujete vkládat proměnné. Ty totiž do GTM nedostanete.

Lepší cestou je vložit JSON-LD přímo do vlastního zdrojáku.

Typy strukturovaných dat

Organization

Používá se pro popis firmy nebo jiné organizace. Pomáhá k upřesnění výpisu Knowledge Graph ve výsledcích vyhledávání a zároveň je povinným atributem některých dalších typů – např. Publisher v Article.

Příklad zdrojového kódu JSON-LD pro Organization:

<script type="application/ld+json">{
 "@context": "http://schema.org",
 "@type": "Organization",
 "url": "http://seosamani.cz/",
 "sameAs" : [ 
   "https://www.facebook.com/seo-samani", 
   "https://twitter.com/seo-samani"],
 "name": "SEO šamani s.r.o.",
 "logo": "http://seosamani.cz/img/logo.png",
 "description": "TOP SEO šamani. Dostaneme vás na první pozici Googlu za 150kč během 3 dní.",
 "email": "info@seosamani.cz",
 "telephone": "+420 123 456 789",
 "address": { 
    "@type": "PostalAddress",
    "streetAddress": "Šamanská 20",
    "addressLocality": "Praha",
    "postalCode": "11000"}
}</script>

Person

Typ určený k popisu konkrétní osoby, který má obdobný význam jako Organization.

Příklad zdrojového kódu JSON-LD pro Person:

<script type='application/ld+json'>{  
  "@context": "http://www.schema.org",
  "@type": "person",
  "name": "Tomáš Šamánek",
  "jobTitle": "SEO šaman",
  "email": "ja@seosaman.cz",
  "telephone": "+420 123 456 789",
  "image": "http://seosaman.cz/img/logo.png",
  "birthDate": "1900-01-01",
  "url": "http://seosaman.cz",
    "sameAs" : [ 
      "https://www.facebook.com/seosaman",
      "https://www.linkedin.com/in/seosaman/",
      "https://twitter.com/seosaman"]    }    
  "address": {   
    "@type": "PostalAddress",
    "streetAddress": "Šamanská 20",
    "addressLocality": "Praha",
    "postalCode": "11000"}
}</script>

Product

Umožňuje vám výrazně obohatit výpis v SERPu u produktových dotazů. Díky “podtypům” Offers a AggregateRating můžete zaujmout cenou, skladovostí a hvězdičkovým hodnocením.

Příklad zdrojového kódu JSON-LD pro Product:

<script type="application/ld+json">{
 "@context": "http://schema.org",
 "@type": "Product",
 "name": "Apple iPhone 6 32GB Space Gray", 
"image": "https://supereshop.cz/img/apple-iphone-x-64-gb.jpg",
 "description":"OBROVSKÉ SLEVY na iPhone ✓ Ušetřete až 5 tisíc korun ✓ Mobilní telefon iPhone 6 32GB Space Gray, iPhone 6 není jen větší – je ve všech směrech lepší. Má větší plochu, a přitom je podstatně tenčí. Je výkonnější, ovšem výjimečně úsporný...",
 "aggregateRating": { 
"@type": "AggregateRating", "bestRating": "5", "ratingCount": "41", "ratingValue": "4.8"}, 
"offers": {
    "@type": "Offer",
    "Price": "9990",
    "PriceCurrency":"CZK",
    "Availability": "https:\/\/schema.org\/InStock"}
}</script>

Jak může vypadat výsledek v SERPu? U vašeho produktů září hvězdy a CTR stoupá.

Strukturovaná data pro produkt s hvězdičkovým hodnocením a skladovostí

Výpis v SERPu – strukturovaná data Product, Offers a AggregateRating

 

Article

Podobně jako NewsArticle nebo BlogPosting se používá k označení článků. Hlavní výhodou je možnost použít AggregateRating pro výpis hvězdičkového hodnocení.

Rozdíl mezi Article, NewsArticle a BlogPosting

Article je vhodný pro obsahové weby – delší odborné články, rozebírající konkrétní téma.

NewsArticle je určený pro články na zpravodajských portálech. Bude vám nápomocný pro zobrazení v kartách “Hlavní události”.

NewsArticle - strukturovaná data v SERPu

Strukturovaná data NewsArticle v sekci “Hlavní události” SERPu

 

BlogPosting použijete spíše pro kratší články o rozličných tématech.

TIP: Jestliže vám jde pouze o propsání hvězdičkového hodnocení do SERPu, netrapte se výběrem ideálního formátu. Nasaďte Article a zapomeňte na ostatní varianty.

Příklad zdrojového kódu JSON-LD pro Article:

<script type="application/ld+json"> {
 "@context": "http://schema.org",
 "@type": "Article",
 "headline": "Strukturovaná data pro SEO",
 "description": "Strukturovaná data jsou metadata popisující význam jednotlivých elementů webové stránky. Umožňují robotům vyhledávačů lépe pochopit, parsovat a interpretovat zdrojový kód.",
 "datePublished": "2017-12-05",
 "dateModified": "2017-12-08",
 "image" : {
    "@type": "ImageObject",
    "url": "https://ondrejmeier.cz/wp-content/uploads/2017/12/strukturovana-data-navod.jpg"},
 "author": {
    "@type": "Person",
    "name": "Ondřej Meier"},
 "publisher": {
    "@type": "Organization",
    "name": "Ondřej Meier",
    "logo": {
       "@type": "ImageObject",
       "url": "https://ondrejmeier.cz/wp-content/uploads/2017/08/ondrej-meier-logo.png",
       "width": "200",
       "height": "100"}},
 "mainEntityOfPage": {
    "@type": "WebPage",
    "@id": "https://ondrejmeier.cz/strukturovana-data-seo-navod/"},
 "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "5",
    "reviewCount": "2",
    "bestRating": "5",
    "worstRating": "1"}
 }</script>

Aggregate rating

Hvězdičkové hodnocení musí být vždy přiřazeno k rodičovskému elementu (Product, Article…). Na webu mějte hodnocení vypisované hodnotami 1-5 (klasické hodnocení) nebo 1-100 (procenta). Od toho se odvíjí hodnota v atributu “bestRating”.

Další cestou, jak propsat hvězdičky do SERPu je typ Rating, který se hojně používá u “recenzních článků”. Místo průměrného hodnocení uživatelů, zde jde pouze o názor autora článku. Zažitým pravidlem je použití hodnoty 1-10.

Příklad zdrojového kódu JSON-LD pro AggregateRating:

 "aggregateRating": {
 "@type": "AggregateRating",
 "bestRating": "5",
 "ratingCount": "24",
 "ratingValue": "4.8"
 },

Procentuální AggregateRating:

Strukturovaná data vypisující procentuální hvězdičkové hodnocení do SERPu

AggregateRating s procentuálním hodnocením používá například Heureka.cz

 

AggregateRating s hodnotou 1-5:

Strukturovaná data pro výpis hvězdičkového hodnocení 1-5.

AggregateRating s hodnocením 1-5 používá například Mall.cz

Rating 1-10:

Použití strukturovaných dat typu Rating

Rating používá například Testado.cz pro hodnocení autorů článků vypisovaném v SERPu.

 

BreadcrumbList

Příklad zdrojového kódu JSON-LD pro BreadcrumbList:

<script type="application/ld+json">{
 "@context": "http://schema.org",
 "@type": "BreadcrumbList",
 "itemListElement":[
{
    "@type": "ListItem",
    "position": 1,
    "item":{
       "@id": "https://ondrejmeier.cz",
       "name": "Ondřej Meier" }},
 {
    "@type": "ListItem",
    "position": 2,
    "item": {
       "@id": "https://ondrejmeier.cz/sluzby/",
       "name": "Služby"}},
 {
    "@type": "ListItem",
    "position": 3,
    "item":{
       "@id": "https://ondrejmeier.cz/sluzby/analyza-klicovych-slov/",
       "name": "Analýza klíčových slov"}}]
}</script>

Jak vypadá BreadcrumbList v SERPu?

BreadcrumbList je typ strukturovaných dat, který umožňuje přehlednější výpis drobečkové navigace ve výsledcích vyhledávání

BreadcrumbList pro přehlednější výpis drobečkové navigace používá například Benu.cz

Website

Website vám pomůže vypsat v SERPu interní vyhledávání. Umožňuje totiž přidat “SearchAction”, díky kterému určíte, jak se má hledaný výraz použít v URL – jaký formát mají URL adresy s výsledky interního vyhledávání.

<script type="application/ld+json">{
"@context":"http://schema.org",
"@type":"WebSite",
"@id":"#website",
"url":"https:ondrejmeier.cz",
"name":"Ondřej Meier",
"potentialAction":{ 
"@type":"SearchAction", 
   "target":"https:ondrejmeier.cz/?s={search_term_string}",
   "query-input":"required name=search_term_string" }
}</script>

Jak vypadá interní vyhledávání v SERPu?

Výsledky vyhledávání se zobrazením interního vyhledávání

Výpis interního vyhledávání v SERPu pomocí strukturovaných dat

 

Další rozšířené typy jsou například Recepty, Události a Místa. Seznam všech typů najdete na oficiálním webu – Schema.org/docs/schemas.

 

Propsání do SERPu

I když uděláte vše správně. Chvilku si počkáte, než začne Google strukturovaná data zobrazovat ve výsledcích vyhledání.

Záleží na velikosti a autoritě webu i přiděleném crawl budgetu.

Z mých zkušeností byste měli vidět první výsledky během jednotek dní. Zobrazení rozšířených výsledků pro všechny podstránky trvá podstatně déle.

Pro vyhledávač Google jsou strukturovaná data jasným návodem, jak by měl zdrojový kód interpretovat a propsat jej do SERPu. Nemusí ale zobrazit všechna data, která označíte. V jiných případech může zase zobrazovat upravené výsledky vyhledávání pro stránky, které nemají strukturovaná data implementovaná. Občas je to vidět například u drobečkové navigace.

Postup specifikace a zadání

Nejdříve byste měli specifikovat typové stránky (typy stránek), na které chcete strukturovaná data implementovat. K nim přiřaďte ty nejdůležitější typy strukturovaných dat – ty které chcete vidět v SERPu.

Výsledný seznam může vypadat následovně:

  • Detail produktu
  • – Hodnocení
  • – Cena
  • – Dostupnost
  • Detail článku
  • – Hodnocení
  • Homepage
  • – Interní vyhledávání
  • Všechny podstránky
  • – Drobečková navigace

Tento seznam je spíše pro vás jako zadavatele. Pro rychlý přehled. Programátorům by se moc nelíbil. Proto byste jej měli přesněji specifikovat.

Detail produktu

  • Product
    • Name
    • Desctiption
    • Image
    • AggregateRating
      • BestRating (=5)
      • WorsRating (=1)
      • RatingCount
      • RatingValue
    • Orrers
      • Price
      • Availability
      • PriceCurrency

Detail článku

  • Article
    • Headline
    • Description
    • DatePublished
    • DateModified
    • Image
    • Author
      • Name
    • Publisher
      • Name
      • Logo
    • MainEntityOfPage
    • AggregateRating
      • BestRating (=5)
      • WorsRating (=1)
      • RatingCount
      • RatingValue

Homepage

  • WebSite
    • URL
    • Name
    • PotencialAction (type = SearchAction)
      • Target (type = EntryPoint)
        • URLTemplate
      • Query-Input (type = PropertyValueSpecification)
        • ValueName
        • ValueRequired

Všechny podstránky

  • BreadcrumbList
    • ItemListElement
      • Position
      • Itemp
        • ID
        • Name

Strukturovaná data pro WordPress

Používáte-li wordpress, máte práci značně zjednodušenou. Existují pluginy, které za vás potřebné elementy najdou a označí, případně máte již řešení implementovaná v šabloně.

WordPress pluginy

Pluginů zdarma je celá řada, v oficiálním repozitáři wordpressu hledejte “schema”, “structured data” nebo “json-ld”.

Vyberte plugin, který nejlépe odpovídá vašim potřebám, nainstalujte a rovnou otestujte výsledek.

Jaké pluginy můžu doporučit?

kk Star Ratings

Hotové řešení pro implementaci hvězdičkového hodnocení. Přidá vám na stránky i samotné funkční prvky pro hodnocení. Klasické žluté hvězdičky můžete nahradit jakýmkoliv vlastním obrázkem.

Schema

Komplexnější plugin pro přidání více typů strukturovaných dat.

Per page head

Plugin pro jednoduché přidání jakéhokoliv kódu do hlavičky stránky (pro 1 konkrétní URL). Díky tomu můžete jednoduše vložit statická strukturovaná data pro unikátní typ stránky. JSON-LD kód můžete napsat buď ručně nebo vygenerovat připravenými nástroji:

Yoast

SEO plugin Yoast vám automaticky přidá strukturovaná data pro Website (s interním vyhledáváním) a pro profily na sociálních sítích. Dokáže vám pomoct i s drobečkovou navigací.

Nástroj pro testování

Oficiální nástroj od Google

Pro samotné testování je nejlepší volbou “Nástroj na testování strukturovaných dat” z dílny Google.

Google nástroj na testování strukturovaných dat

Nástroj na testování strukturovaných dat Google

Při zadání dat máte na výběr:

  1. načtení URL adresy – v případě, kdy jsou již úpravy veřejně dostupné
  2. vložení fragmentu kódu – když máte úpravy dostupné pouze na interním stagingu nebo schované za comming soon stránkou. V tom případě si načtěte stránku v prohlížeči, zobrazte zdrojový kód a celý jej zkopírujte do inputu “fragment kódu”.

TIP: klávesové zkratky Ctrl+U, Ctrl+A, Ctrl+C a Ctrl+V vám celý proces zpříjemní.

Nástroj zpracuje zdrojový kód a zobrazí použité typy strukturovaných dat. Nezáleží zde na použitém formátu. Můžete mít implementovaný klidně i mix formátů a výsledek bude stejný. Důležité je, aby se korektně propsaly všechny typy.

Test strukturovaných dat

Test strukturovaných dat

Na ukázce jsou vidět 2 instance. Počet chyb a upozornění byste měli udržet na nule. Google si sice s drobnými chybami poradí, ale proč mu zbytečně ztěžovat práci.

Podvrhování dat a postihy od Googlu

Podvrhovat strukturovaná data vám určitě nedoporučuji. Ze strany Googlu se sice nedočkáte penalizace ale může vaše rozšířené výpisy přestat zobrazovat v SERPu. Vaše snaha a investovaný čas tak bude mít nulový přínos.

Google vás o rozpoznání chyb a nepravostí bude informovat zprávou v Search Console.

POZOR i na výraznější aktualizace již publikovaného obsahu. Chcete-li například doplnit obsah (pokrýt více longtailů) u dříve publikovaného článku, který má Google zaindexovaný a má propsáno hvězdičkové hodnocení, můžete o hvězdičky přijít.

Proč strukturovaná data implementovat

Blížíme se ke konci a je čas vyjasnit si to nejdůležitější – PROČ byste se měli strukturovanými daty zabývat a CO konkrétně vám implementace přinese.

Strukturovaná data nejsou oficiálně potvrzeným hodnotícím faktorem Googlu. Nepřímo vám ale mohou výrazně pomoci. Udělejme si nejdříve malou exkurzi do mozku Google, poté si hned vysvětlíme reálný přínos implementace.

Nakoukněte Googlu do mozku

Jedním z nejdůležitějších faktorů pro řazení výsledků vyhledávání na Google je “RankBrain“. RankBrain je umělá inteligence, která se dokáže učit z chování uživatelů na Googlu a upravovat pořadí výsledků vyhledávání. Cílem je, aby uživatel dostal nejlepší odpověď (jak převratné).

Důležité pro nás je, jak můžeme hodnocení RankBrainu ovlivnit.

Podle dostupných informací jsou hlavními “složkami” RankBrainu CTR a Dwell time.

CTR

(Click Through Rate), neboli míra prokliku – Kolik procent uživatelů se ze SERPu proklikne na váš web.

Zjednodušený příklad – Jestliže se váš web pro konkrétní dotaz vypisuje například na 3. pozici a máte vyšší CTR než konkurence na 2. pozici, jste adeptem na posun o jednu příčku výše.

Dwell time

Čas strávený na stránce po prokliku ze SERPu. Jinak řečeno – za jak dlouho se uživatel vrátí z vašeho webu zpět na Google a začne hledat dál.

Nízký Dwell time může být pro Google signál že vaše stránka neposkytuje dostatečnou odpověď pro hledanou frázi, nebo je zde jiný problém s používáním webu (UX, dlouhá doba načítání…).

Někdy může být naopak nízký Dwell time dobrým signálem. Jestliže se uživatel proklikne na váš web a rychle zjistí odpověď, splnili jste úkol. Po návratu do SERPu pak bude hledat jiný dotaz, což je signálem, že mu poslední navštívená stránka předala uspokojivou odpověď.

Jak vám to pomůže?

Strukrutovaná data – primárně hvězdičkové hodnocení – vám v SERPu pomohou zvýšit CTR. Tím pozitivně ovlivnit hodnocení RankBrainu a následně i samotné pozice. Samozřejmě to s sebou nese i vyšší návštěvnost.

Když se začalo hvězdičkové hodnocení v SERPu objevovat, jedna z prvních případových studií hlásila až 30% nárůst CTR. Ano, o třetinu více návštěvnosti díky pár hodinám práce.

Nebuďme ale naivní a nepočítejme s 30% nárůstem. Hvězdičkové hodnocení v SERPu už zdaleka není neokoukanou novinkou.

Kdyby vám ale přineslo úplně reálných 10-15%, co by to pro váš web znamenalo? S konstantním konverzním poměrem by to skokově zvýšilo obrat o desetinu. Může to znamenat desetitisíce, statisíce, klidně i miliony, o které teď zbytečně přicházíte.

Tajný trik pro konkurenční výhodu

Hvězdičkové hodnocení navíc nemusíte zobrazovat jen u detailu produktů nebo článků. Můžete jej vypsat i tam, kde to konkurence neudělala a kde vám to umožní obrovský BOOST návštěvnosti. Tento trik si zatím nechám pro sebe. Jestliže vám ale možnost nové konkurenční výhody nedá spát, napište mi. Rád pomůžu.


Jestliže se vám článek líbil nebo naopak nelíbil, zanechte mi prosím zpětnou vazbu v komentářích nebo vyplňte hvězdičkové hodnocení ať to v SERPu svítí :).

Strukturovaná data pro SEO – kompletní návod
4.8/5 (95.56%) - 9 hodnocení

In-house SEO specialista v Mladé frontě a.s.. Provozuji portfolio vlastních webů a pomáhám klientům zlepšovat jejich online projekty z pozice externího SEO konzultanta. S čím vám pomůžu?

Co si myslíte o tomto článku? Přidejte komentář.

Tvá emailová adresa nebude zveřejněna. Povinné pole jsou označeny *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Lost Password