Fragmenty rozszerzone (z angielskiego rich snippets inaczej też określane jako dane strukturalne) stają się coraz ważniejszym czynnikiem optymalizacji serwisów internetowych. Dzięki temu wyszukiwarki szybciej analizują serwis, treści i wykorzystują je jako dodatkową informację wyświetlaną w wyszukiwarce.
Implementacja fragmentów rozszerzonych nie jest łatwa z punktu widzenia programistycznego dla przeciętnego Kowalskiego. Dla skryptów sklepów internetowych istnieje szereg dodatkowych modułów, podobnie jak do popularnie stosowanych CMSów.
Najczęściej popełniane błędy
Do niedawna Google pozwalało na dowolną implementację fragmentów rozszerzonych i niejednokrotnie dochodziło do manipulacji celem uzyskania dodatkowych parametrów, wyświetlanych w wyszukiwarce Google.
Potoczne nadużycia to:
- Wstawianie nagłówków Hx do menu okruszkowego
- Ukrywanie oceń strony i recenzji (gwiazdek) w kodzie strony bez możliwości głosowania przez użytkownika ? wstawione do kodu na stałe
- Wyświetlanie oceny serwisu należącego do innej strony WWW ? np. zaczerpnięcie ?gwiazdek? z serwisu opineo, obudowanie w Schema i wyświetlanie jako swoich co jest błędne
- Wyświetlanie informacji o produktach na stronie kategorii w sklepach internetowych
I kilka innych.
Za takie manipulacje Google zazwyczaj cofa wyświetlanie popularnie nazywanych ?gwiazdek?. Jeśli tak się naprawdę dzieje, należy zweryfikować poprawność implementacji fragmentów rozszerzonych.
Czasem może się zdarzyć, że Gogole nałoży karę ręczną:
Nie spotkałem się aby efektem takiej kary był spadek ruchu czy pozycji. Jedynym efektem było usunięcie dodatkowych elementów wyświetlanych w wyszukiwarce.
Edycja: Marcin Kopczyński słusznie zauważył, że powyższe stwierdzenie tyczy się samej kary. W przypadku zniknięcia „gwiazdek” spada CTR a tym samym ma to przełożenie na ruch pośrednio. Moja wypowiedź była w kontekście samej kary jako kary ręcznej. Mam nadzieję, że wyprostowałem nieco swoje stwierdzenie 🙂
Jakie fragmenty rozszerzone wdrożyć w sklepach internetowych?
Jak wspomniałem powyżej, istnieje wiele gotowych modułów do skryptów, na których został uruchomiony sklep internetowy. Dla sklepów najczęściej wdrażane są następujące fragmenty rozszerzone:
Produkty, recenzje i cena to zestaw obowiązkowy dla każdej karty produktowej. Do tego dochodzi implementacja snippetów dla menu okruszkowego (breadcrumbs ? wytyczne pod adresem: https://developers.google.com/search/docs/data-types/breadcrumb).
I tutaj ważna rzecz ? implementacja drzewa „Schema.org/Product” może występować jedynie na karcie produktu. Nie wolno wyświetlać tego typu snippetów na podstronach kategorii. Do tego celu służy drzewo ?Schema.org/ListItem? lub ?Schema.org/SomeProducs? ? przykładowo:
Problem implementacji fragmentów rozszerzonych typu ?Product? na stronach kategorii najczęściej spotkałem na skrypcie Prestashop.
Dodatkowo można wdrożyć snippet związany z ?Organization?, ?Logo?, ?Localbusiness? ? w tym ostatnim przypadku jest to istotne dla firm posiadających sklep stacjonarny w mieście.
Jakie fragmenty rozszerzone wdrożyć na blogach?
Na blogach opartych o CMS typu WordPress wystarcza wgrać odpowiedni plugin i go skonfigurować (na przykład: ?All In One Schema Rich Snippets?). Kupując gotowe skórki fragmenty rozszerzone są już zaimplementowane.
Na swoim blogu (skórka kupiona na themeforrest) dodatkowo mam wgrany plugin ?WP-PostRatings? umożliwiając ocenę artykułu, dzięki czemu mam gwiazdki w wynikach wyszukania.
Fragmenty rozszerzone związane z lokalizacją
Ważnym aspektem jest wdrożenie snippetów związanych z drzewem ?Schema.org/LocalBusiness?. Dzięki temu szybko możemy zdobyć w Knowledge Graph informacje o opiniach nie tylko z Google ale wyświetlać te z Facebook?a.
Z pomocą dla LocalBusiness przychodzą Nam developersi z Google ? pod adresem https://developers.google.com/search/docs/data-types/local-business znajdziecie opis implementacji.
Trochę więcej trzeba się namęczyć w przypadku firm, które mają kilka oddziałów ? jak zaimplementować snippety dla firm wielooddziałowych? Z pomocą przychodzi gałąź ?ParentOrganization?.
Jakie fragmenty rozszerzone wdrożyć na stronach typowo usługowych?
Tutaj sprawa jest prosta i pozwolę sobie tylko wypuntkować:
- Organization / Logo
- LocalBusiness
- Article – dla bloga / aktualności
- Breadcrumbs – o ile występuje
Wykorzystujcie możliwości instalowania wszelkich danych strukturalnych do restauracji, hoteli, organizacji, biznesów lokalnych, eventów i tak dalej. Warto ubogacać wyniki wyszukania w nowe rzeczy, które zwiększają CTRy i przyciagają wzrok klienta (zarządzanie SXO).
Bibliografia i podsumowanie
W całym powyższym artykule oparłem się na następujących artykułach:
- http://blog.mageworx.com/2015/10/rich-snippets-for-ecommerce/
- https://matt-jackson.com/seo/ecommerce-rich-snippets/
- https://www.v9digital.com/blog/2016/07/01/rich-snippet-markup-changed-ecommerce-site-can-leverage/
- https://www.chrisains.com/seo/local-business-schema-mark-via-json-ld/
- https://whitespark.ca/blog/the-json-ld-markup-guide-to-local-business-schema/
- https://www.schemaapp.com/tutorial/how-to-do-schema-markup-for-local-business/
- https://whitespark.ca/blog/why-your-local-business-schema-sucks-and-how-to-make-it-better/
- oraz materiały ze szkolenia organizowanego wspólnie z Foxstrategy.pl
Zebrałem je w jednym miejscu gdyż wielokrotnie sam z powyższych informacji korzystam praktycznie przy każdym audycie seo czy optymalizacji sklepu internetowego.
Bezpośrednio nie powoduje to wzrostu pozycji. Wdrożenie snippetów powoduje wyświetlenie specyficznych rzeczy w wynikach wyszukania a to przekłada się na zainteresowanie użytkownika a to z kolei na większy CTR i konwersję.
Nie musi. To, że tester pokazuje prawidłowy kod nie oznacza, że Google będzie wyświetlało snippet.
Wdrożenie nie jest trudne ale czasem wymaga prac programistycznych. Można skorzystać z generatorów typu technicalseo.com
Muszą być widoczne. W przypadku ukrycia można otrzymać karę ręczną i Google zaprzestanie ich wyświetlania.
Czy w sklepach internetowych „Stan magazynowy” to nie jest przypadkiem „Dostępność” ? Bo stan magazynowy może określać stricte ilość sztuk, natomiast dostępność może być podawana jako „W magazynie”, „Niedostępny”
Kwesta wdrożenia. Nigdy nie podawaj konkretnego stanu magazynowego np zostało 3 sztuki. Bo potrafia kupic 3 sztuki i nie odebrać tylko po to aby Ci na złośc zrobić. Ot taka konkurencyjna przypadłość 😉 poza tym liczby gwoździ tez sie nie poda bo to na kilogramy idzie. Kwestia podejscia co chcesz prezentować – „niedostępny” ma wiele znaczeń.
Pozwolę sobie mieć inne zdanie. Moim zdaniem brak podawania stanów magazynowych może dotyczyć np. sklepów z odzieżą, gdzie nikt nie kupi 5 takich samych par butów i stan ilościowy nie jest mu do niczego potrzebny. W branży, którą się zajmuję, bardzo dużo firm podaje stany magazynowe i uważam, że bardzo dobrze. Klient wchodzi na naszą stronę i widzi, czy mamy taką ilość produktu jaka jest mu potrzebna, czy też nie.
Poczekaj aż konkurencja Ci wykupi. To jest wniosek po rozmowie z kilkoma sklepami, które miały takie przypadki.
Ale cieszy Mnie Twoje zdanie. Dzięki.
Czy dodawanie opisu lub fragmentu opisu do danych strukturalnych jest wskazane?
A jeśli tak czy opis powinien być unikalny czy można zaciągnąć z opisu produktu? Spotkałeś się kiedyś z wykorzystywaniem takich danych w sposób potwierdzający zasadność ich umieszczenia? Czy może to być wykorzystywane z negatywnym skutkiem dla strony?
Podobne pytanie dotyczące umieszczenia w rich snippet profili SM, Google pisze o tym tutaj https://developers.google.com/search/docs/data-types/social-profile ale nie spotkałem się jeszcze żeby prezentował linki do profili SM na grafie ani w wizytówkach strony. Czy umieszczać czy można odpuścić?
Profile SM umieszczam wszystkie jeśli tylko klient je posiada. Dzięki temu szybciej się pojawiają w ramce po prawej stronie n zapytania brandowe.
Opis – wskazany 🙂 Widziałem różnie – fragmenty i całość. Dodanie całosci nie powoduje DC 🙂
Cześć, poruszyłeś ciekawy temat. Od siebie dodam, że dla stron lokalnych/usługowych warto wprowadzić odpowiednie znaczniki na stronach landingowych dla konkretnych usług(np. offer, pricerange). Jeśli dobrze to zrobimy uzyskamy dodatkowy tekst w SERP-ie co mocno podnosi CTR.
Przy okazji zapytam:
1. Czy dane kontaktowe firmowe wyświetlasz tylko na podstronie kontaktowej czy na wszystkich stronach serwisu?
2. Jakie dane prezentujesz site-wide ?
3. W niektórych branżach pola np. priceRange po jakimś czasie znika z SERPÓW bez informacj w GSC o ręcznych działaniach. Czy miałeś podobny problem ?
Pozdrawiam
Cześć,
No CTRy rosną – szczególnie w mapkach 😉
Ad.1 zależy od wielkości – w sklepach na kontakcie i głównej. W stronach usługowych wszędzie.
Ad.2 wszystkie dostępne 🙂
Ad.3 nie spotkałem się – może to kwestia „siły” serwisu?
Plusów rich snippest jest ogrom. Przykładowo gdy potencjalni klienci wyszukują Twoją firmę w Google, znajdą wiele przydatnych informacji bezpośrednio na tzw. knowledge graph. Mimo że mogą nie odwiedzić Twojej strony, mogą wykonać inne bezpośrednie działania, np. zadzwonić do ciebie lub znaleźć drogę do twojego sklepu.
Featured snippets pojawiają się nad wynikami organicznymi, więc naturalne jest, że to ważne miejsce, które przyciąga uwagę użytkownika. Wyróżniony fragment zwykle pochodzi z pozycji 1-7 pierwszego SERPa. Oznacza to, że nawet jeśli twoja strona ma 7 pozycję w wynikach organicznych, może pojawić się jako polecany fragment, „kradnąc” tym samym pierwszą pozycję i zyskując bardzo dobry ruch. Musi tylko dać odpowiedź na zapytanie konkretnego użytkownika.
Mam jeszcze jedno pytanie. Czy dodanie LocalBusines dla firmy o zasięgu całego kraju nie spowoduje negatywnych skutków?
Nie. Bo to działa lokalnie.
Hej,
Mam pytanie odnośnie schema na stronach kategorii produktów / listingów w sklepie. Czy coś tam wrzucać? Konkurencja nic nie ma a jedni nalegają na itemList a inn na Shopping aggregator
Jak nic nie będzie to tragedii tez nie będzie. Natomiast chyba mylisz sprawy Shopping agregator to coś innego niż fragmenty rozszerzone.
Google zindeksował stronę rozbudowaną o dane rozszerzone, ale świeci na żółto z ostrzeżeniami – to dane których nie jestem w stanie wypełnić, bo ich nie mam na stronie to gwiazdki – nie ma u mnie oceny i video, którego akurat nie ma na stronie. Czy należy się tymi ostrzeżeniami przejmować czy dostosowywać inne strony, wiedząc, ze tez będą miały ostrzeżenia? I czy one wpływają jakoś na SEO?
Nie bardzo zrozumiałem problem. Jeśli coś świeci się na żółto to ostrzega i nie ma z tym problemu. Natomiast problemem jest to, jakie fragmenty rozszerzone implementujesz bo nie wszystkie są obecnie akceptowane przez Google. Jeśli nie masz oceniania to gwiazdek nie będzie i de facto snippety są wtedy zbędne.
Gwiazdki to chyba nie jedyny cel dodawania danych rozszerzonych.
Umieszczam elementy rozszerzone @recipe. Przy wyszukiwaniu obrazem na zdjęciach pojawiają się dodatkowe etykiety, wyświetla je też Pinterest jako rich pins, choć nie zauważyłam znaczącej poprawy ani w wynikach wyszukiwania, ani w zwiększonej dystrybucji pinów. Czy dodawanie danych rozszerzonych przynosi na ten moment jakieś praktyczne korzyści?
A not o teraz wiem jakich snippetów używasz. Snippety nie powodują lepszego SEO ale wpływają na CTRy (większe zainteresowanie, większa klikalność) a to się przekłada na konwersje. Więc tak – dodawanie snippetów pomaga w konwersji 🙂
Dziękuję 🙂
Czy jest szansa abyś podał źródło skąd można skopiować kod przykładu fragmentów rozszerzonych w przypadku dwóch oddziałów firmy? Na stronie masz obrazek i nawet jak go przepisałem, cały czas wyświetla się błąd składni, natomiast usuwając wskazane błędy wciąż znajduje coś innego 🙁
Możesz skorzystać z technicalseo.com – https://technicalseo.com/tools/schema-markup-generator/ albo możesz zajrzeć do żródła Zgreda 😉
Słusznie! 🙂 To jeszcze mam pytanie, czy testowałeś może „priceRange” w liczbie powtórzeń $ (np. $$)? W kodzie widzę, że masz „PLN”. Dlaczego?
Nie testowałem. Mam PLNy bo trzeba było wypełnić 😉
Kiedyś używałem schemy przez lata na stronie z wpisami. Potem przestałem i pozycje w sumie zostały te same. Schama bardzo dobra do sklepów, firm ale nie stron prywatnych bo tam nie ma za wiele treści dodatkowej wspierającej. Nie zaszkodzi na pewno używanie schemy ale nie zawsze w każdej stronie pewnie też pomoże. Albo pomoże albo będzie neutralne.