Co oznacza @id i czym różni się od url

Dane uporządkowane opisują obiekty, na przykład witrynę, firmę, stronę i opublikowany na niej artykuł. Identyfikator @id nadaje takiemu obiektowi rozpoznawalną nazwę. Gdy inny fragment JSON-LD podaje tę samą wartość @id, wskazuje na ten sam obiekt, zamiast tworzyć jego niezależny opis. To przydatne zwłaszcza wtedy, gdy dane o firmie występują na wielu podstronach.

Właściwość url ma inne zadanie: podaje adres strony powiązanej z obiektem. Wartości url i @id mogą być podobne, ale nie muszą być identyczne. Dla witryny można przyjąć identyfikator w postaci „[adres strony głównej]#website”, a dla organizacji „[adres strony głównej]#organization”. Część po znaku # pomaga odróżnić dwa obiekty opisane w kontekście tego samego adresu. Wyrażenia w nawiasach są tu szablonami, które trzeba zastąpić rzeczywistymi adresami serwisu.

Zaplanuj identyfikatory dla trzech poziomów serwisu

W typowym portalu firmowym warto zacząć od obiektów Organization i WebSite. Pierwszy opisuje podmiot prowadzący serwis, drugi samą witrynę. Przypisz im stałe, różne identyfikatory oparte na wybranej wersji adresu strony głównej. Jeśli publikujesz opis organizacji na kilku podstronach, używaj wszędzie tego samego @id. Nie twórz nowego identyfikatora firmy dla każdego artykułu.

Następnie każdej podstronie przypisz własny obiekt WebPage, na przykład z @id „[kanoniczny adres artykułu]#webpage”. Sam tekst może być obiektem Article o @id „[kanoniczny adres artykułu]#article”. Rozdzielenie tych pojęć jest użyteczne: WebPage oznacza stronę internetową, a Article opublikowaną na niej treść. Przy wyborze adresu bazowego trzymaj się jednej wersji adresu strony: nie mieszaj wariantów z ukośnikiem i bez niego ani różnych wersji protokołu lub domeny.

Połącz obiekty odwołaniami, nie kopiami

Gdy identyfikatory są ustalone, można zapisać powiązania między obiektami. W opisie Article właściwość publisher może wskazywać Organization przez jego @id, a mainEntityOfPage może wskazywać WebPage. Z kolei WebPage może wskazywać WebSite we właściwości isPartOf. Jeśli podajesz autora, opisz rzeczywistą osobę lub organizację odpowiednim typem i połącz ją z artykułem przez author.

Najważniejsza zasada brzmi: odwołanie musi mieć dokładnie taką samą wartość jak identyfikator obiektu, do którego prowadzi. Jeśli organizacja ma @id „[adres strony głównej]#organization”, właśnie tej wartości użyj przy publisher. Podobnie odwołanie do strony w mainEntityOfPage powinno odpowiadać @id jej obiektu WebPage. Obiekty można umieścić razem w tablicy @graph, co ułatwia przejrzenie ich relacji. Mogą też występować w oddzielnych blokach JSON-LD, o ile identyfikatory pozostają spójne.

Przykład: artykuł w serwisie firmy

Wyobraź sobie firmę prowadzącą poradnik na swojej stronie. Na stronie artykułu opisuje ona cztery obiekty: Organization z identyfikatorem zakończonym „#organization”, WebSite z „#website”, WebPage z „#webpage” oraz Article z „#article”. Dwa ostatnie identyfikatory opierają się na adresie tej konkretnej podstrony; dwa pierwsze pozostają takie same w całym serwisie. Dzięki temu kolejny artykuł może wskazać tę samą organizację i witrynę, ale będzie miał własną stronę i własny obiekt Article.

Taki układ nie wymaga powielania pełnego opisu firmy przy każdej relacji. Wystarczy odwołanie do ustalonego @id, choć na danej podstronie możesz zamieścić również szerszy opis obiektu. Podawaj tylko informacje zgodne z widoczną treścią i rzeczywistą strukturą serwisu. Samo dodanie JSON-LD nie zastąpi czytelnej strony ani nie gwarantuje określonego sposobu prezentacji w wynikach wyszukiwania.

Krótka kontrola przed publikacją

Najpierw sprawdź, czy każdy odrębny obiekt ma odrębny @id oraz czy ten sam obiekt zachowuje identyfikator na różnych podstronach. Potem porównaj wszystkie odwołania: publisher, mainEntityOfPage i isPartOf powinny wskazywać identyfikatory właściwych obiektów, bez literówek i przypadkowych różnic w adresach. Zwróć też uwagę, czy identyfikatory WebPage i Article dotyczą aktualnej podstrony, a nie adresu skopiowanego z innego wpisu.

Na koniec sprawdź poprawność składni JSON-LD oraz to, czy użyte typy i właściwości pasują do opisywanej treści. Narzędzia do walidacji pomagają wykryć błędy zapisu i częściowo ocenić strukturę, ale nie rozstrzygają za Ciebie, czy dane wiernie opisują witrynę. Spójność identyfikatorów jest podstawą: bez niej nawet poprawny składniowo kod może przedstawiać powiązania inaczej, niż zamierzano.

Wróć do kategorii ↗