Dane strukturalne to dodatkowe informacje na stronie internetowej, które pozwalają lepiej zrozumieć jej treść wszelkiego rodzaju wyszukiwarkom i innym mechanizmom, które wykorzystują i przetwarzają dane zawarte w Internecie. Jak można się domyślić, zalety płynące z zastosowania tego rozwiązania są niezliczone. W tym artykule pokażę jak je stosować, na co trzeba uważać i w jaki sposób dane strukturalne wpływają na pozycję w wyszukiwarce.
Prawdziwy potencjał danych uporządkowanych – bo taka terminologia istnieje w polskojęzycznych narzędziach Google – ujawnia się tam gdzie danych (czyli w przypadku www: treści) jest stosunkowo dużo.
Cel stosowania danych uporządkowanych
Podstawowym problemem dla wyszukiwarek internetowych jest zwracanie odpowiednich odpowiedzi w wynikach wyszukiwania na zapytania użytkowników. To dlatego, że jeszcze nie są wstanie na 100% rozstrzygnąć czy tekst na stronie jest wiarygodny, wyczerpujący i czy będzie dla użytkownika przydatny. Aby to zmienić wprowadza się metadane, czyli dane opisujące dane. Dzięki temu jest większe prawdopodobieństwo, że nie dojdzie do nieporozumienia i wszyscy na tym korzystają: właściciele stron internetowych, użytkownicy i wyszukiwarki. Dane strukturalne to jedna z propozycji zastosowania takich metadanych, które mogłyby rozwiązać ten problem.
Semantic Web – sieć semantyczna
Istnieją dwa podejścia, które mają umożliwić usystematyzowanie wiedzy zawartej w Internecie. Jedno z nich polega na doskonaleniu inteligentnych mechanizmów, które klasyfikują i wydobywają wiedzę ze standardowych danych jakie obecnie są zawarte w Internecie a drugie podejście polega na stworzeniu standardów i wytycznych, których przestrzeganie przez osoby publikujące treść w Internecie znacznie ułatwi ten proces.
Dzięki danym strukturalnym, ciężar tego trudu sklasyfikowania Internetu jest przenoszony z wyszukiwarek i robotów indeksujących na osoby publikujące treści w Internecie. Dane uporządkowane to kolejna próba „naprawienia Internetu” ale też krok dalej niż kolejne znaczniki meta, wartości atrybutów rel lub semantycznie brzmiące znaczniki (jak zostało to wprowadzone w HTML5).
Dane strukturalne mówią wyszukiwarce: „Słuchaj, to jest strona firmy lokalnej z Wrocławia”, „to jest Blog na temat mody”. W przypadku sklepu internetowego: „Ta liczba to cena w walucie PLN, a ta pod spodem to ilość towaru w magazynie”. Mogą to być też bardziej szczegółowe kwestie jak część przepisu kulinarnego, w której wymienione zostały składniki. Informacje takie są zamieszczane na stronie w zestandaryzowany sposób co pozwala klasyfikować, porównywać i analizować dane, w wyniku czego zwracać jeszcze lepsze rezultaty.
Korzyści dla użytkowników stron internetowych
Poza oczywistą kwestią wyższej jakości zwracanych wyników, użytkownicy mają okazję namacalnie skorzystać z dobrodziejstw danych strukturalnych a są nimi fragmenty rozszerzone (inna nazwa elementy rozszerzone z ang. rich snippets). Poniżej prezentuję przykłady z losowo znalezionych wyników wyszukiwania:
Przykład 1: Sklep internetowy (ocena produktu, liczba opinii, cena, stan magazynowy, lub tylko zakres cen)

Jak widać na tym przykładzie, wyróżnieniu za pomocą fragmentów rozszerzonych podlegają najważniejsze informacje z punktu widzenia klienta. Cena, opinie i dostępność – to właśnie tego najczęściej szukamy a fragmenty rozszerzone pomagają nam w szybszym znalezieniu interesujących nas produktów.
Przykład 2: Bilety na imprezy/wydarzenia (data, nazwa, miejsce)

Załóżmy, że szukamy biletów na interesującą nas imprezę. Tutaj elementy rozszerzone pomagają nam w odnalezieniu biletów na konkretne wydarzenie.
Przykład 3: Przepisy kulinarne – (zdjęcie potrawy, ocenę, ilość opinii i czas przyrządzenia)

Atrakcyjne zdjęcie dania, którego dotyczy przepis z pewnością zwiększy szansę na to, że szukająca tego przepisu osoba kliknie właśnie ten wynik, choćby się znajdował dopiero na trzeciej czy piątej pozycji.
O tym jakie jeszcze mamy rodzaje danych strukturalnych, można poczytać na stronach, do których podałem linki w sekcji ze źródłami.
Testujemy składnię dane strukturalne
Jeżeli zamieszczamy dane strukturalne na stronie internetowej, musimy mieć pewność, że mają one poprawną składnię. W przeciwnym wypadku nie pomożemy wyszukiwarkom w sklasyfikowaniu danych znajdujących się na naszej stronie i tym samym fragmenty rozszerzone nie będą działać. Artykuł z błędnym kodem danych uporządkowanych będzie też zwykle uzyskiwał gorsze pozycje w wyszukiwarce. Dlaczego? Otóż, nie otrzymawszy korzyści płynących z danych strukturalnych zmniejszamy stosunek treści do kodu HTML, który jest przecież sygnałem rankingowym.
Uwaga: poprawna składnia dany strukturalnych nie gwarantuje, że fragmenty rozszerzone będą wyświetlane w wynikach wyszukiwania. To czy fragmenty są widoczne zależy w głównej mierze od wewnętrznych mechanizmów wyszukiwarki i nie mamy na to bezpośredniego wpływu. Warto też wspomnieć że ewentualne zmiany w danych strukturalnych będą widoczne w wyszukiwarce po pewnym czasie. Wyszukiwarka może odczytać dane strukturalne przy okazji indeksowania konkretnych podstron.
Do niedawna poprawność danych struktueralnych na stronie internetowej badano za pomocą Narzędzia do testowania uporządkowanych danych. Narzędzie to jest jednak wycofywane i poprawność danych strukturalnych należy teraz sprawdzać za pomocą Testu wyników z elementami rozszerzonymi.
Wspierane formaty danych uporządkowanych
JSON-LD (metoda zalecana) – polega na dodaniu skryptu w nagłówku lub w ciele strony internetowej. Nie jest przeplatany z treścią tak jak to mamy rozwiązane w pozostałych formatach co zapobiega powstawaniu ewentualnych kolizji lub trudności przy edycji treści. JSON-LD można dynamicznie dodawać za pomocą JavaScriptu i wyszukiwarka nie powinna mieć z ich odczytywaniem najmniejszego problemu.
Przykład:
<script type='application/ld+json'> { "@context": "http://www.schema.org", "@type": "LocalBusiness", "name": "Nazwa firmy", "url": "http://nazwa-firmy.pl", "logo": "https://cdn.mansfeld.pl/wp-content/uploads/2019/06/mansfeld-amp-logo.png", "image": "http://nazwa-firmy.pl/obrazek1.jpg", "description": "Nazwa firmy zajmuje się produkcją i dystrybucją...", "address": { "@type": "PostalAddress", "streetAddress": "ul. Długa 64", "addressLocality": "Warszawa", "addressRegion": "mazowieckie", "postalCode": "00-001", "addressCountry": "Warszawa" } } </script>
Czytaj więcej o formacie JSON.
Mikrodane (microdata) – bardzo popularne rozwiązanie. Polega na dodawaniu dodatkowych atrybutów i wartości w znacznikach HTML bezpośrednio w ciele strony. Wadą są możliwe problemy związane z zapisem liczb i formatów adresowych, taki przypadek pokazałem w dodatku 1, który możecie znaleźć na końcu artykułu.
<div itemscope itemtype="http://schema.org/Organization"> <span itemprop="name">Nazwa firmy</span> Dane kontaktowe: <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> Adres: <span itemprop="streetAddress">Długa 16</span> <span itemprop="postalCode">00-001</span> <span itemprop="addressLocality">Warszawa</span>, </div> Telefon:<span itemprop="telephone">+48 123 123 123 </span> </div>
RDFa – stosowane zarówno w ciele strony jak i w jej nagłówku rozszerzenie technologii HTML5 które pozwala na przeplatanie danych z treścią strony.
<div vocab="http://schema.org/" resource="#bbg" typeof="LocalBusiness"> <h1 property="name">Nazwa Firmy</h1> <span property="description"> Nazwa firmy zajmuje się produkcją i dystrybucją...</span> <div property="address" resource="#bbg-address" typeof="PostalAddress"> <span property="streetAddress">00-001 Długa 64</span> <span property="addressLocality">Warszawa</span>, <span property="addressRegion">PL</span> </div> Telefon: <span property="telephone">+48 123 123 123</span> </div>
Zalety danych strukturalnych
- szansa na pojawienie się opisów rozszerzonych, przy naszej stronie, które zwiększą klikalność wyniku w wynikach wyszukiwania a tym samym polepszą pozycję danej podstrony na zadane zapytanie,
- możliwość lepszego zrozumienia naszej strony przez wyszukiwarki co pozwoli zwracać ją dla trafniejszych zapytań,
- doskonalenie mechanizmów działania Internetu, które pozwala tworzyć coraz bardziej użyteczne usługi dla każdego z nas.
Wady danych strukturalnych
- wymaga inwestycji dodatkowej uwagi i edycji witryny,
- standardy ciągle ewoluują i wymagają ciągłego testowania i śledzenia zmian w dokumentacji,
- kolejna rzecz w kontekście SEO, której nieprawidłowe stosowanie może pogorszyć widoczność w wyszukiwarkach.
Zalecenia i dobre praktyki przy stosowaniu danych strukturalnych
To może być oczywiste, ale dane strukturalne muszą być koherentne ze standardową treścią HTML. Stosując przykładowo datę utworzenia lub wyróżniony obrazek, należy je pokazać użytkownikowi. Umieszczanie w danych strukturalnych informacji, które nie są prezentowane użytkownikowi mogą być sygnałem wskazującym na niską jakość treści. Co więcej, dane te muszą dotyczyć istotnej i reprezentatywnej jej części.
Dane strukturalne należy stosować nie tylko na podstronach z poszczególnymi artykułami, ale także na stronie kategorii.
Dane strukturalne powinny być zgodne ze specyfikacją schema.org
Wpływ danych strukturalnych na SEO
Jak każdy element na stronie, dane strukturalne mogą zarówno polepszyć jak i pogorszyć pozycje w wyszukiwarce. Należy pamiętać, że wyszukiwarka Google stosuje wyrafinowane mechanizmy analizujące treść i jakość stron WWW ponieważ doskonale wie, że dane strukturalne można użyć w sposób nieuczciwy. Jedną z takich technik jest dodawanie gwiazdek opinii, na które użytkownicy nie mają wpływu.
Nieprawidłowe użycie danych strukturalnych może spowodować usunięcie strony z rankingu (można o tym przeczytać w źródłach).
Poprawne użycie może zwiększyć ilość wejść na stronę i polepszyć pozycje strony za sprawą lepszego dopasowania twojej strony do konkretnych zapytań użytkowników.
Przykłady danych strukturalnych, które można wykorzystać na każdej stronie
Dane schema jak produkt czy przepis kulinarny można wykorzystać na wybranych stronach. Są jednak schematy, które można wykorzystać na niemal każdej stronie.
Breadcrumbs czyli „okruszki”
Breadcrumbs to nic innego jak menu nawigacyjne. Ścieżka prowadząca do konkretnej podstrony może mieć swoje odzwierciedlenie w danych strukturalnych. Oto przykład dla strony, którą obecnie czytasz:
<script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Paweł Mansfeld – strona oficjalna", "item": "https://mansfeld.pl/" },{ "@type": "ListItem", "position": 2, "name": "Web", "item": "https://mansfeld.pl/category/webdesign/" },{ "@type": "ListItem", "position": 3, "name": "Dane strukturalne (uporządkowane)", "item": "https://mansfeld.pl/webdesign/dane-strukturalne-uporzadkowane/" }] } </script>
Na drugiej pozycji mógł być „Blog” a dopiero za nim kategoria wpisu „Web” ale postanowiłem pominąć tę stronę zarówno w adresie URL jak i w okruszkach.
Organization
Kolejnym przykładem jest Organization. Dane strukturalne organizacji powinny być umieszczone na stronie głównej lub na stronie kontakt. Pełna wersja wygląda tak:
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Organization", "name": "Mansfeld", "url": "https://mansfeld.pl", "logo": "https://cdn.mansfeld.pl/wp-content/uploads/2021/04/nowe-logo-2021-500x500-1.png", "contactPoint": [ { "@type": "ContactPoint", "telephone": "883535530", "contactType": "customer service", "email": "pawel@mansfeld.pl", "areaServed": [ "PL" ], "availableLanguage": [ "Polish" ] } ], "sameAs": [ "https://www.facebook.com/mansfeldpl", "https://www.youtube.com/channel/UC1y9IXJk4Y-vPbWPdqpNjIg" ] } </script>
Article
Article to schemat możliwy do wykorzystania na blogach i w różnego rodzaju artykułach. Tak jak pokazano na poniższym przykładzie, przechowuje dane o autorze i o szczegółach publikacji:
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Article", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://mansfeld.pl/webdesign/dane-strukturalne-uporzadkowane/" }, "headline": "Dane strukturalne (uporządkowane)", "datePublished": "2017-09-10T19:23:59+0200", "dateModified": "2021-04-14T01:19:11+0200", "author": { "@type": "Person", "name": "Paweł Mansfeld" }, "description": "Dane strukturalne to dodatkowe informacje na stronie internetowej, które pozwalają lepiej zrozumieć jej treść ", "image": { "@type": "ImageObject", "url": "https://cdn.mansfeld.pl/wp-content/uploads/2017/09/dane-structuralne-uporzadkowane.jpg", "width": 1920, "height": 1280 }, "publisher": { "@type": "Organization", "name": "Mansfeld", "logo": { "@type": "ImageObject", "url": "https://cdn.mansfeld.pl/wp-content/uploads/2021/04/nowe-logo-2021-500x500-1.png", "width": 512, "height": 512 } } } </script>
Najczęstsze błędy dotyczące danych strukturalnych
W tym punkcie wypiszę błędne praktyki związane z danymi strukturalnymi.
1. Schema Organizacja na każdej podstronie serwisu. Tak naprawdę powinny być na stronie głównej lub stronie kontakt.
Podsumowanie
Dane strukturalne polepszają wrażenia użytkownika naszej strony jeszcze zanim użytkownik na nią trafi. Z góry jest przekonany, że znajdzie to czego szukał. Dzięki temu, że treść jest lepiej rozumiana przez wyszukiwarkę, zwykle znajdziemy się wyżej w wynikach wyszukiwania. Stosowanie danych strukturalnych obniży tym samym współczynnik odrzuceń, dzięki temu, że rzadziej będzie dochodzić do nieporozumień na linii wyszukiwarka – użytkownik.
Jeżeli interesuje cię testowanie także innych elementów własnej witryny, możesz znaleźć więcej narzędzi do testowania witryn, które szczegółowo wymieniłem w artykule: Jakość stron internetowych.
Źródła
- https://json-ld.org/,
- http://schema.org/docs/schemas.html,
- https://developers.google.com/search/docs/guides/intro-structured-data,
- https://developers.google.com/search/docs/guides/sd-policies,
- https://rdfa.info/,
- https://www.w3.org/TR/microdata/
Changelog
14 kwietnia 2021:
- dodanie sekcji „najczęstsze błędy”,
- aktualizacja linku do nowego narzędzia testującego,
- segregacja źródeł.
15 kwietnia 2021
- dodanie sekcji z „Przykłady danych strukturalnych”