Działania w Grach Play

Przegląd

W tym dokumencie znajdziesz wprowadzenie do działań w grach na platformie Google Play w przypadku gier wideo, listę wymagań dotyczących schematu oraz szczegółowe informacje o procesie wprowadzania na rynek tej funkcji.

Wprowadzenie do działań w Grach Play

Mobilna wersja działań w Grach Play
Obraz działań w Grach Play na urządzeniu mobilnym
Wersja na komputery działań w Grach Play
Obraz działań w Grach Play na komputerze

Działania związane z grami wideo umożliwiają użytkownikom granie w gry bezpośrednio ze strony wyników wyszukiwania na komputerze lub urządzeniu mobilnym. Gdy użytkownicy wyszukują grę, z którą jest powiązane co najmniej 1 działanie w Google Play, na karcie Przegląd na stronie uporządkowanych wyników wyszukiwania lub w panelu wiedzy wyświetla się działanie w Google Play. Dotyczy to wersji demonstracyjnych i pełnych gier, które są dostępne bezpłatnie, w ramach subskrypcji lub zakupu a la carte i można je przesyłać strumieniowo z chmury na komputerach i urządzeniach mobilnych lub pobierać za pomocą lokalnych aplikacji klienckich na komputerach i konsolach.

Działania w grach na Play są oparte na pliku danych, który zawiera szczegóły katalogu gier. Plik danych to obiekt JSON zawierający zbiór elementów. Encja to obiekt schema.org, który reprezentuje grę w Twoim katalogu i powiązany z nią precyzyjny link do strumieniowania gry (wersja demonstracyjna, natychmiastowa wersja próbna lub pełna wersja).

Aby Google mogło uzyskać dostęp do Twojego pliku danych, musisz go zapisać i umieścić w lokalizacji, do której Google ma dostęp. Aby mieć pewność, że Twoje treści są aktualne, Google regularnie pobiera plik danych z Twojego hosta.

Szczegółowe informacje o każdym z tych wymagań znajdziesz w kolejnych sekcjach.

Rozpocznij

Jak wspomnieliśmy w poprzedniej sekcji, Twoje obowiązki jako dostawcy obejmują:

  • Poznaj informacje, które są potrzebne do utworzenia pliku danych, ich źródła i dostępność, a także sposób, w jaki trafiają do pliku danych.
  • Utwórz plik danych zawierający wymagane szczegóły każdego elementu gry w katalogu.
  • Umieść plik danych na serwerze lub w usłudze przechowywania w chmurze i zezwól Google na regularne pobieranie pliku danych.
  • Odpowiadaj na problemy zgłaszane przez Google i je rozwiązuj. Mogą one dotyczyć jakości lub struktury samych plików JSON.
  • Dbaj o aktualność pliku danych, gdy Twój katalog się zmienia.
  • Upewnij się, że jakość pliku danych jest utrzymana po uruchomieniu.

Przyjrzyjmy się im bliżej.

Zanim zaczniesz

Zanim zaczniesz tworzyć plik danych, zapoznaj się z wymaganiami dotyczącymi metadanych działań w grach na platformie Play i zbierz wszystkie potrzebne informacje w jednym miejscu. Zanim zaczniesz tworzyć plik danych, zalecamy wykonanie tych czynności:

  • Sprawdź wymagania dotyczące metadanych dla VideoGame.
  • Zbierz metadane.
    • Zwróć szczególną uwagę na właściwości wymaganezdecydowanie zalecane. Google używa tych właściwości do uzgadniania treści w pliku danych z treściami w bazach danych Google. Im więcej metadanych podasz dla swoich treści, tym lepiej Google będzie w stanie dopasować treści.

Wyjaśnienie użycia terminów „Dzieła” i „Wydania” w tej dokumentacji

  • Utwór: abstrakcyjna koncepcja gry wideo. Atrybutami utworu są takie metadane jak tytuł, deweloper, opis gry czy wydawca.
  • Wydanie: konkretna wersja gry wideo. Atrybutami wydania są takie metadane jak rok publikacji, nazwa platformy czy linki bezpośrednie.

Na przykład „Shadow of the Tomb Raider” to utwór, ale każda jego wersja to wydanie. W tym przypadku gra „Shadow of the Tomb Raider” może mieć wersję na Stadia, wersję na PlayStation, wersję z wcześniejszym dostępem na Stadia itd.

To rozróżnienie jest szczególnie ważne w przypadku pliku danych, w którym może nie być to oczywiste. Istnieją 2 elementy VideoGame:

  • VideoGame (Work) to element „najwyższego poziomu” VideoGame:
    • exampleOfWork to właściwość elementu VideoGame (Work), która określa co najmniej 1 wystąpienie elementu VideoGame (Edition).
    • W przypadku każdego elementu VideoGame (Work) musi zostać podana co najmniej 1 właściwość exampleOfWork VideoGame (Edition).
  • VideoGame (Edition) to element VideoGame niższego poziomu.

Warto pamiętać, że utwór może mieć wiele wydań. Zalecamy, by w miarę możliwości je grupować. Dzięki temu systemy Google mogą wykorzystać wszystkie istotne informacje o grze wideo i wyświetlić je w wyszukiwarce.

Poznaj 2 kluczowe usługi i ich wymagania. Jest to bardzo ważne, ponieważ kolejnym krokiem jest utworzenie pliku danych.

Kanoniczny URL (url)

Kanoniczny adres URL (url) pomaga Google dokładnie uzgodnić zawartość Twojego katalogu z zawartością baz danych Google.

„Kanoniczny URL to adres strony, którą Google uznaje za najbardziej reprezentatywną spośród zbioru duplikatów stron w Twojej witrynie. Jeśli masz na przykład kilka adresów URL tej samej strony (załóżmy example.com?sukienka=1234 i example.com/sukienki/1234), Google wybiera 1 z nich jako kanoniczny”. (Źródło: Konsolidacja duplikatów adresów URL)

Wymagania dotyczące kanonicznego adresu URL:

  • url musi być globalnie niepowtarzalny.
  • url musi zawierać działający kanoniczny adres URL, który Google może zindeksować.

Identyfikator (@id)

Identyfikator (@id) musi spełniać te wymagania:

  • Niepowtarzalny w całym katalogu:
    • Nie używaj np. tego samego symbolu @id w przypadku 2 różnych gier wideo.
  • Statyczny:
    • Nie możesz później zmienić @id.
  • W formie ujednoliconego identyfikatora zasobu (URI):
    • Jeśli lokalny identyfikator (ID) treści nie jest w formacie URI, dodaj przed nim domenę, aby spełnić to wymaganie. Na przykład jeśli identyfikator treści to 1234abc, a domena to https://example.com, @id może być https://example.com/1234abc.
    • @id nie musi być działającym adresem URL, wystarczy, że będzie mieć format URI.
    • Domena użyta w wartości @id (np. https://example.com) musi należeć do Twojej organizacji.

Ponieważ atrybut url podmiotu spełnia wszystkie wymagania dotyczące identyfikatora (jest niepowtarzalny globalnie, statyczny i ma postać identyfikatora URI), zalecamy używanie atrybutu url podmiotu jako atrybutu @id w odpowiednich przypadkach.

Poznaj i określ wymagania dotyczące precyzyjnych linków

Gdy użytkownik zainicjuje działania w Grach Play w odniesieniu do treści, Google użyje precyzyjnego linku do tych treści, aby przekierować użytkownika bezpośrednio do nich w aplikacji lub na platformie. O czym musisz pamiętać:

  • Precyzyjne linki muszą otwierać treści, na które są kierowane, na wszystkich określonych platformach. Różne platformy mogą mieć różne precyzyjne linki. Na przykład precyzyjny link działający w internecie na komputerze może różnić się od precyzyjnego linku działającego w internecie na urządzeniu mobilnym. Sprawdź, czy każda gra ma różne precyzyjne linki w zależności od platformy.
  • Precyzyjne linki mogą zawierać parametry (&) lub tagi kotwicy (#).
  • Aby Twoje treści były dostępne na różnych platformach Google (wyszukiwarce, Asystencie i Androidzie TV), musisz używać linków bezpośrednich.

Ponieważ atrybut url podmiotu spełnia wszystkie wymagania dotyczące identyfikatora (jest niepowtarzalny globalnie, statyczny i ma postać identyfikatora URI), zalecamy używanie atrybutu url podmiotu jako atrybutu @id w przypadkach, w których ma to sens.

Platforma Opis
http://schema.org/DesktopWebPlatform platformy wyszukiwania w przeglądarce na komputerze,
http://schema.org/MobileWebPlatform platformy wyszukiwania w przeglądarce mobilnej,
http://schema.org/AndroidPlatform Wyszukaj platformę w aplikacji na Androida.
http://schema.org/AndroidTVPlatform platforma Android TV w aplikacji Android TV,
http://schema.org/IOSPlatform Wyszukaj platformę w aplikacji na iOS.

Określ wymagania dotyczące dostępu do gier w katalogu: zadaj sobie poniższe pytania i upewnij się, że w metadanych w pliku danych można znaleźć odpowiedzi na nie.

  • Czy użytkownicy muszą zalogować się w aplikacji lub na platformie, aby uzyskać dostęp do treści?
  • Czy użytkownicy potrzebują subskrypcji?
  • Czy użytkownicy muszą dokonać zakupu, aby zagrać w grę?
  • Czy wymagania dotyczące dostępu zmieniają się z czasem?
  • Czy wymagania dotyczące dostępu zależą od lokalizacji urządzenia?

Jeśli oferujesz więcej niż jeden pakiet subskrypcji, który użytkownicy mogą kupić, dowiedz się, czym jest commonTier i jak ma się to do Twojej integracji z Google.

Rodzaje paywalli

Obecnie Działania w Grach Play obsługują tylko te typy paywalli:

Wartość kategorii Typ paywalla
nologinrequired Nie musisz niczego kupować ani się logować.
free Użytkownik musi być zalogowany, ale nie musi mieć płatnej subskrypcji.
subscription Użytkownik musi mieć aktywną subskrypcję. Dostęp jest niezależny od poziomu subskrypcji.
subscription Użytkownik musi mieć aktywną subskrypcję. Dostęp jest niezależny od poziomu subskrypcji.
purchase Treści są dostępne bezterminowo po zakupie.
rental Treści są dostępne przez określony czas po zakupie.

Te wartości kategorii są wykorzystywane później podczas tworzenia pliku danych. Pamiętaj też, że kategoria rental w tabeli powyżej jest obecnie całkowicie opcjonalna i może być obsługiwana w przyszłości w ramach ulepszenia usługi. Obecnie produkt z pliku danych wykorzystuje tylko wartości kategorii free, nologinrequired, subscription i purchase.

Na koniec szybko przejrzyj przykładowy plik danych, aby zorientować się, jaki efekt chcemy osiągnąć.

Zrozumienie powyższych informacji i upewnienie się, że istnieją metadane reprezentujące odpowiedzi (na te pytania), które są wystarczające, aby przejść do etapu tworzenia pliku danych.

Tworzenie pliku danych

Plik danych działań w Grach Play to obiekt JSON zawierający zbiór elementów, które reprezentują gry wideo w Twoim katalogu. Musisz przesłać plik danych jako jeden lub kilka plików i hostować go na serwerze lub w usłudze przechowywania w chmurze, aby Google mógł go regularnie pobierać.

Przestrzeganie wymagań dotyczących rozmiaru, ilości i formatu pliku danych

Musisz spełniać te wymagania:

  • Wszystkie pliki danych muszą mieć rozszerzenie nazwy pliku .json.
  • Sprawdź, czy nazwy plików nie zawierają spacji.
  • Nie szyfruj pliku danych.
  • Zakoduj plik danych w formacie UTF-8 (sprawdź ustawienia edytora plików). kodowanie obrazu,
  • Jeśli plik danych jest większy niż 1 GB po rozpakowaniu, podziel go na kilka plików.
    • Jeśli rozmiar pliku jest mniejszy niż 1 GB, nie ma ograniczeń co do liczby elementów, które możesz umieścić w jednym pliku, ani liczby plików, które przesyłasz do Google w ramach przesyłania pliku danych.
  • Upewnij się, że plik jest zakodowany bez BOM, zgodnie ze specyfikacją JSON. Aby sprawdzić to w systemie Linux, adres hexdump file.json | head -n 1 nie może zaczynać się od BBEF pod adresem 0x00.

Przestrzegaj wymagań dotyczących treści pliku danych

Musisz przestrzegać tych wymagań dotyczących treści:

  • Plik danych nie może zawierać nieaktualnych elementów. Są to elementy, w których przypadku właściwość availabilityEnds linku bezpośredniego jest ustawiona na datę z przeszłości lub które nie są już dostępne w witrynie.
  • Wszystkie precyzyjne linki, takie jak urlTemplate, i wszystkie adresy URL, takie jak url, które uwzględniasz w pliku danych, muszą być produkcyjnymi wersjami adresów URL. Nie używaj nieprodukcyjnych adresów URL wykorzystywanych na przykład podczas kontroli jakości lub programowania.
  • Wszystkie adresy URL, takie jak url, muszą być kanoniczne, jak wspomnieliśmy w poprzedniej sekcji.
  • Każdy element w pliku danych musi określać te właściwości:
    • unikalny identyfikator: @id,
    • unikalny adres URL: url,
    • unikalny precyzyjny link: urlTemplate.

Podczas tworzenia pliku danych zalecamy:

  • Dowiedz się więcej o strukturze pliku danych.
  • Zacznij od przykładowego pliku danych.
    • Wybierz maksymalnie 5 reprezentatywnych encji z katalogu. Wybierz encje o dość złożonej strukturze, ale typowe dla encji w katalogu, i utwórz dla nich plik danych.
  • Wyślij go do przypisanego przedstawiciela Google, aby szybko go zweryfikować.
  • Po wyeliminowaniu wszystkich błędów w przykładowym pliku danych rozwiń go, aby zawierał wszystkie elementy w katalogu.
    • Aby potwierdzić, że plik danych zawiera wszystkie elementy w katalogu, porównaj liczbę elementów w pliku danych z liczbą produktów w katalogu.

Hostowanie pliku danych

Gdy Twój plik danych będzie gotowy, umieść go w bezpiecznej lokalizacji. Google regularnie pobiera plik danych, by mieć pewność, że jego treść jest aktualna. Obsługujemy te metody hostowania:

Metoda hostingu Obsługa uwierzytelniania
Google Cloud Storage Przyznaj uprawnienia wyświetlającego obiekty Cloud Storage usłudze 088794101-100000002-account@partnercontent.gserviceaccount.com
HTTPS Wymaga udostępnienia nazwy użytkownika i hasła lub certyfikatów klienta HTTP.
SFTP Wymaga udostępnienia hasła, klucza + wyrażenia lub obu tych elementów.
AWS S3 Wymaga udostępnienia identyfikatora klucza i klucza dostępu do zasobnika AWS S3.

Po przesłaniu pliku danych do systemu hosta skontaktuj się z zespołem ds. działań w Grach Play, aby sprawdzić plik danych.

Przesyłanie pliku danych do sprawdzenia

Po umieszczeniu pliku danych na serwerze skontaktuj się z przypisaną Ci osobą kontaktową ds. działań w Grach Play, aby rozpocząć proces sprawdzania pliku danych. W tej wiadomości podaj te informacje:

  • Przegląd/opis: poinformuj nas, czy udostępniasz przykładowy plik danych czy pełny plik danych produkcyjnych. Jeśli udostępniasz przykładowy plik danych, podaj, jeśli to możliwe, szacowany czas dostarczenia pliku danych w wersji produkcyjnej.
  • Lokalizacja hosta: adres URL pliku danych.
  • Uwierzytelnianie hosta: jeśli jest używane, podaj dane uwierzytelniające, dzięki którym Google może pobrać plik danych z Twojego hosta. Więcej informacji znajdziesz w artykule Hostowanie pliku danych.
  • Konto testowe: konto testowe, które umożliwia zespołowi Play Game Actions dostęp do linków bezpośrednich w aplikacji lub na platformie w celu przeprowadzenia testów. Jeśli Twój plik danych zawiera podmioty na wielu platformach, podaj konto testowe dla każdej z nich.
  • Icons prześlij te 5 ikon. Te ikony są używane obok działań w grach na Play w wyszukiwarce.
Kategoria Wymiary (piksele) Rozmiar pliku Wytyczne
Akcje w grze w wyszukiwarce, Cast i innych usługach
16 x 16 Rozmiar pliku wszystkich ikon z wyjątkiem ikony o rozmiarze 112 x 112 pikseli nie może przekraczać 1 KB.

Rozmiar pliku ikony o wymiarach 112 x 112 pikseli nie może przekraczać 3 KB.

Wymagane są wszystkie 5 rozmiarów ikon.

Obrazy muszą spełniać te wymagania:

  • format PNG,
  • okrągły kształt,
  • przezroczyste tło;
  • Upewnij się, że obrazy są wygładzone i nie są zniekształcone ani rozpikselowane.
20 x 20
40 x 40
44x44
112 x 112

Przykład

przykładowe ikony,

Jak działa weryfikacja pliku danych

Weryfikacja pliku danych składa się z 2 etapów:

  • Weryfikacja struktury:
    • To pierwsza faza sprawdzania poprawności.
    • Google przekazuje opinie dotyczące struktury plików JSON. Czy plik JSON jest prawidłowo sformatowany? Czy plik danych zawiera wszystkie wymagane i wysoce zalecane właściwości? Czy precyzyjne linki są podane i oznaczone zgodnie z naszymi wymaganiami dotyczącymi kanału?
    • Ten etap wymaga kilku rozmów z Google i trwa do momentu, aż wszystkie uwagi zostaną uwzględnione.
  • Uzgodnienie metadanych:
    • Rozpoczyna się to dopiero po przejściu przez kanał fazy weryfikacji struktury. Wtedy Google rozpoczyna proces uzgadniania z Grafem wiedzy Google.
    • Na tym etapie przekazujemy informacje zwrotne na temat metadanych zawartych w pliku danych. Aby publikacja zakończyła się sukcesem, musisz rozwiązać wszystkie problemy. Na przykład w tej fazie możemy poprosić Cię o poprawienie tytułu gry lub daty jej premiery.
    • Ten etap wymaga też kilku rozmów z Google i trwa do momentu, aż wszystkie uwagi zostaną uwzględnione.

Kryteria akceptacji pliku danych

Kanał jest uznawany za gotowy do uruchomienia, gdy wszystkie problemy blokujące zostaną rozwiązane, a Google potwierdzi, że jakość metadanych jest na odpowiednim poziomie.

Aktualizowanie pliku danych według potrzeb

Chociaż zalecamy codzienne aktualizowanie pliku danych, ostatecznie zależy to od tego, jak często zmienia się Twój katalog. Zapoznaj się z tymi uwagami i wskazówkami:

  • Wyszukiwarka Google nie obsługuje aktualizacji w czasie rzeczywistym.
  • Wyszukiwarka Google pobiera plik danych raz dziennie i zwykle indeksuje jego zawartość w ciągu 2 dni (od momentu uruchomienia).
  • Jeśli w dostępności linków bezpośrednich zachodzi dająca się przewidzieć zmiana, użyj właściwości availabilityStartsavailabilityEnds, aby ustawić dokładne daty.
  • Jeśli element nie jest już dostępny w Twoim katalogu, usuń go całkowicie z pliku danych.

Dokumentacja

Omówienie struktury pliku danych

Plik danych działań w grach na Androida ma taką strukturę:

Diagram pliku danych playgame

Koperta pliku danych

Koperta pliku danych to obiekt najwyższego poziomu w pliku danych działań w Grach Play. Obiekt zawiera tablicę obiektów oznaczeń treści (encji VideoGame (Work)), które reprezentują wszystkie gry wideo w Twoim katalogu.

Właściwość Oczekiwany typ Opis
@context Adres URL Wymagany. Ustawiono: http://schema.org
@type Text Wymagany. Ustaw jako: DataFeed.
dateModified DateTime Wymagany. Data i godzina ostatniej modyfikacji pliku danych w formacie ISO 8601 (wraz ze strefą czasową).
dataFeedElement Thing Wymagany. Elementy katalogu gier.

Szablon

{
  "@context": "http://schema.org",
  "@type": "DataFeed",
  "dateModified": "2018-07-20T00:44:51Z",
  "dataFeedElement": [
    {  },
    {  },
    {  },
    ...
  ]
}
    

Obiekty znaczników treści

Obiekt oznaczenia treści reprezentuje pojedynczy element w katalogu: VideoGame (Work). Obiekt zawiera identyfikator treści i kanoniczny adres URL oraz pomaga opisywać treści za pomocą metadanych. Obiekt znaczników treści dla VideoGame (Work) ma właściwość o nazwie exampleOfWork, która umożliwia połączenie go z obiektem VideoGame(Edition). Ten element VideoGame(Edition) może zawierać tablicę obiektów znaczników Action, które umożliwiają powiązanie treści z wieloma obiektami znaczników Action. Na przykład treść może mieć inny obiekt znacznika działania dla każdego regionu.

Obiekty znaczników działań

Obiekt znaczników Action opisuje precyzyjny link, który przenosi użytkowników do gry, oraz poziom dostępu wymagany w przypadku tej gry. Obiekt jest właściwością (potentialAction) obiektu znacznika treści. W przypadku działań w Grach Play użyj obiektu specyfikacji dostępu do działania, aby określić ograniczenia dostępu.

Właściwość Oczekiwany typ Opis
@type Text Wymagany. Zawsze ustawiona na PlayGameAction.
gameAvailabilityType GameAvailabilityEnumeration lub Text Wymagany. Wskazuje typ dostępności treści gry powiązanych z tym działaniem, np. czy jest to pełna wersja czy wersja demonstracyjna. Akceptowane wartości to DEMOFULL.
additionalType Text Wymagany. Określa typ działania związanego z grą. Akceptowane wartości to:
  • StreamingPlayAction – oznacza, że gra jest dostępna do transmisji online.
  • DownloadPlayAction – oznacza, że gra jest dostępna do pobrania.
target EntryPoint Wymagany. Obiekt docelowy, który zawiera mapowanie precyzyjnych linków na różne platformy Google.
target.@type Text Wymagany. Zawsze ustawiona na EntryPoint.
target.urlTemplate Adres URL Wymagany. Precyzyjny link, który prowadzi użytkowników do Twojej aplikacji lub platformy i rozpoczyna odtwarzanie gry.
target.inLanguage Text Opcjonalnie. Język oryginału serialu w formacie BCP 47.
target.actionPlatform Text Wymagany. Platformy zmapowane na urlTemplate. Działania w grze obsługują te wartości:
  • http://schema.org/DesktopWebPlatform
  • http://schema.org/MobileWebPlatform
  • http://schema.org/AndroidPlatform
  • http://schema.org/AndroidTVPlatform
  • http://schema.org/IOSPlatform

Wymagania znajdziesz w artykule Typy platform.

actionAccessibilityRequirement ActionAccessSpecification Wymagany. Obiekt specyfikacji dostępu do działania, który opisuje wymagania dotyczące dostępu do treści. Więcej informacji znajdziesz w sekcji Właściwości specyfikacji dostępu do działania.

Szablon

"potentialAction": {
  "@type": "PlayGameAction",
  "target": [
    {  },
    {  }
  ],
  "actionAccessibilityRequirement": [
    {  },
    {  }
  ]
}
    

Cel

Obiekt docelowy zawiera mapowanie precyzyjnego linku na różne platformy Google. Obiekt jest właściwością (target) obiektu znacznika działania. Właściwość urlTemplate rejestruje precyzyjny link, a właściwość actionPlatform rejestruje platformy, które go obsługują.

Przykład

"target": [
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/DesktopWebPlatform",
      "http://schema.org/AndroidPlatform",
      "http://schema.org/AndroidTVPlatform",
      "http://schema.org/IOSPlatform"
    ]
  },
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/mobile/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/MobileWebPlatform"
    ]
  }
]
    

Specyfikacja dostępu do działania

Obiekt specyfikacji dostępu do działania opisuje wymagania dotyczące dostępu do treści na podstawie regionu i okresu. Obiekt jest właściwością actionAccessibilityRequirement obiektu znacznika działania.

Przykładowy cel z 2 precyzyjnymi linkami

"target": [
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/DesktopWebPlatform",
      "http://schema.org/AndroidPlatform",
      "http://schema.org/AndroidTVPlatform",
      "http://schema.org/IOSPlatform"
    ]
  },
  {
    "@type": "EntryPoint",
    "urlTemplate": "http://www.example.com/mobile/game007?autoplay=true",
    "actionPlatform": [
      "http://schema.org/MobileWebPlatform"
    ]
  }
]
    

Specyfikacja dostępu do działania

Obiekt specyfikacji dostępu do działania opisuje wymagania dotyczące dostępu do treści na podstawie regionu i okresu. Obiekt jest właściwością actionAccessibilityRequirement obiektu znacznika działania.

Właściwość Oczekiwany typ Opis
actionAccessibilityRequirement.@type Text Wymagany. Zawsze ustawiona na ActionAccessSpecification.
actionAccessibilityRequirement.category Text Wymagany. wymagania dotyczące dostępu do treści, Akceptowane wartości i więcej informacji znajdziesz w sekcji Typ paywalla.

Jeśli encja reprezentuje grupę treści, musisz ustawić kategorię na najmniej restrykcyjne wymaganie dostępu do jej treści. Jeśli na przykład gra jest dostępna bez opłat za pomocą nologinrequired i w ramach subskrypcji, ustaw kategorię na nologinrequired.

actionAccessibilityRequirement.availabilityStarts Data Wymagany. Data, po której działanie jest dostępne, w formacie ISO 8601 (wraz ze strefą czasową). Datę można ustawić w przyszłości.
  • Musi być równa lub większa niż 72 godziny po availabilityStarts.
  • Jeśli treści są zawsze dostępne po opublikowaniu, ustaw datę na 20 lat od daty bieżącej.

Wymagamy, aby odpowiedni podmiot był podany w pliku danych co najmniej 7 dni przed datą availabilityStarts. Zwiększa to szanse, że gra pojawi się w usługach Google na czas.

actionAccessibilityRequirement.availabilityEnds Data Wymagany. Data, po której działanie nie będzie już dostępne, podana w formacie ISO 8601 (wraz ze strefą czasową). Datę można ustawić w przyszłości.
  • Musi być równa lub większa niż 72 godziny po availabilityStarts.
  • Jeśli treści są zawsze dostępne po opublikowaniu, ustaw datę na 20 lat od daty bieżącej.

Wymagamy, aby wszelkie aktualizacje daty availabilityEnds były wprowadzane w pliku danych co najmniej 7 dni przed datą availabilityEnds. Zwiększa to szanse, że gra przestanie się wyświetlać w usługach Google w dniu availabilityEnds.

actionAccessibilityRequirement.eligibleRegion Country, City, State, GeoShape lub Text Wymagany. Regiony, w których treści są dostępne. Jeśli treści są dostępne na całym świecie, użyj specjalnego ciągu znaków EARTH. Więcej informacji znajdziesz w sekcji Właściwości GeoShape.
actionAccessibilityRequirement.ineligibleRegion Country, City, State, GeoShape lub Text Wymagane, jeśli ma zastosowanie. Regiony, w których treści podlegają ograniczeniom. Nie musisz podawać tej właściwości, jeśli treść jest dostępna wszędzie w ramach eligibleRegion.

Więcej informacji znajdziesz w sekcji Właściwości GeoShape.

actionAccessibilityRequirement.requiresSubscription MediaSubscription Wymagane, jeśli ma zastosowanie. Szczegóły subskrypcji, które użytkownicy muszą znać, aby uzyskać dostęp do treści. Więcej informacji znajdziesz w artykule Właściwości subskrypcji mediów.
  • Podaj tę właściwość, jeśli category ma wartość subscription.
actionAccessibilityRequirement.expectsAcceptanceOf Oferta Wymagany, jeśli treści wymagają zakupu Szczegóły oferty specjalnej powiązanej z treściami. Podaj informacje o cenie w tych przypadkach:
  • Treści kupione jednorazowo (rental lub purchase)
  • treści oparte na subskrypcji, które wymagają dodatkowego zakupu od subskrybentów (subscription);

Jeśli cena wynosi 0,00, usuń cały obiekt Offer i ustaw actionAccessibilityRequirement.category na free. Więcej informacji znajdziesz w sekcji Właściwości oferty.

Specyfikacja subskrypcji multimediów

Obiekt subskrypcji multimediów opisuje szczegóły subskrypcji wymaganej w przypadku treści. Obiekt jest właściwością requiresSubscription obiektu specyfikacji dostępu do działania.

Ważne: jest to wymagane, jeśli actionAccessibilityRequirement.category to subscription, a oferta subskrypcji obejmuje wiele pakietów lub poziomów albo obsługuje dodatki. Pomiń ten krok, jeśli Twoja subskrypcja jest jednostopniowa i zapewnia dostęp do wszystkich treści w katalogu.
Właściwość Oczekiwany typ Opis
requiresSubscription.@type Text Wymagany. Zawsze ustawiona na MediaSubscription.
requiresSubscription.@id Adres URL Wymagany. Unikalny identyfikator subskrypcji. Jeśli treści są dostępne w ramach różnych subskrypcji, każda z nich musi mieć unikalny identyfikator.
requiresSubscription.name Text Wymagany. Nazwa subskrypcji. Zwróć uwagę na te kwestie:
  • Jeśli treści są dostępne w ramach różnych subskrypcji, ta nazwa musi być zgodna z nazwą w systemie uwierzytelniania użytkowników. Jeśli na przykład użytkownik ma dostęp do treści na podstawie subskrypcji o nazwie Pakiet 1, ale system uwierzytelniania używa nazwy PKG1, użyj nazwy PKG1.
requiresSubscription.sameAs Adres URL Opcjonalnie. Strona z opisem subskrypcji.
requiresSubscription.identifier Text Wymagane, jeśli category ma wartość subscription, a commonTier ma wartość false. Unikalny ciąg znaków dla tej subskrypcji, który reprezentuje dostęp do grupy treści w katalogu multimediów.
  • Google zaleca używanie następującej składni: identifier: nazwa domeny + dwukropek (:) + poziom dostępu do treści. Przykłady: example.com:basic, example.com:premium, example.com:sports
requiresSubscription.commonTier Wartość logiczna Wymagane, jeśli kategoria jest ustawiona na subskrypcję. Więcej informacji o commonTier znajdziesz w dokumentacji wymagań dotyczących wspólnych poziomów.

Właściwości oferty

Obiekt oferty opisuje cenę powiązaną z treściami. Obiekt jest właściwością (expectsAcceptanceOf) obiektu specyfikacji dostępu do działania. Można go używać w 2 celach:

  • Aby podać szczegóły zakupu gry. W tym przypadku użycia parametr actionAccessibilityRequirement.category powinien mieć wartość purchase.
  • Podawanie szczegółów zakupu gry, gdy jest ona w promocji. W tym przypadku wartość actionAccessibilityRequirement.category powinna być ustawiona na purchase, a dla każdego działania należy podać 2 oferty – jedną z informacjami o rynkowej cenie detalicznej, a drugą z informacjami o cenie promocyjnej.

Właściwość Oczekiwany typ Opis
expectsAcceptanceOf.@type Text Wymagany – zawsze ustawiony na Offer.
expectsAcceptanceOf.name Text Opcjonalnie – nazwa oferty.
expectsAcceptanceOf.priceSpecification PriceSpecification Wymagane – szczegóły cen powiązane z grą.
expectsAcceptanceOf.priceSpecification.@type Text Wymagany – zawsze ustawiony na UnitPriceSpecification.
expectsAcceptanceOf.priceSpecification.price Number Wymagany – cena zakupu treści. Cena musi być niezerową wartością dodatnią. W przypadku gier z ceną 0, 00 PLN ustaw wartość actionAccessibilityRequirement.category na „free”.
expectsAcceptanceOf.priceSpecification.priceCurrency Text Wymagany – waluta, w której podano cenę, przedstawiona w 3-literowym formacie ISO 4217.
expectsAcceptanceOf.priceSpecification.priceType PriceTypeEnumeration lub Text Wymagany w stosownych przypadkach – typ ceny podanej w ofercie.
Gdy wartość actionAccessibilityRequirement.category to purchase, jest to wymagana właściwość, która może przyjmować tylko 2 wartości:
  • https://schema.org/ListPrice – rynkowa cena detaliczna gry.
  • https://schema.org/SalePrice – oznacza cenę promocyjną gry (zwykle aktywną przez ograniczony czas).

 Podczas podawania szczegółów ceny promocyjnej wymagane są zarówno https://schema.org/ListPrice, jak i https://schema.org/SalePrice.
expectsAcceptanceOf.seller Organizacja Organizacja, która oferuje zakup treści.
expectsAcceptanceOf.seller.@type Text Zawsze ustawiona na Organization.
expectsAcceptanceOf.seller.name Text Nazwa sprzedawcy.
expectsAcceptanceOf.seller.sameAs Adres URL Adres URL strony internetowej, która identyfikuje sprzedawcę, np. jego strona główna.

W przypadku każdego z obsługiwanych typów paywalli poniżej znajdziesz przykład, który pokazuje, jak utworzyć actionAccessibilityObject:

Bezpłatnie (nie wymaga logowania)

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "nologinrequired",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}

Bezpłatna (nie wymaga logowania), tylko 1-godzinny okres próbny

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "nologinrequired",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
    "expectsAcceptanceOf": {
      "@type": "Offer",
      "eligibleDuration": 60
    }
  }
}

Bezpłatnie (wymagane logowanie)

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "free",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}

Jednorazowy zakup z wyprzedaży

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "purchase",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    },
    "expectsAcceptanceOf": [
      {
        "@type": "Offer",
        "name": "Original Price",
        "priceSpecification": {
          "@type": "UnitPriceSpecification",
          "price": 7.99
          "priceCurrency": "USD"
          "priceType": "https://schema.org/ListPrice"
        },
        "seller": {
          "@type": "Organization",
          "name": "Example",
          "sameAs": "http://www.example.com/"
          }
        },
        {
          "@type": "Offer",
          "name": "Sale Price",
          "priceSpecification": {
            "@type": "UnitPriceSpecification",
            "price": 4.99
            "priceCurrency": "USD"
            "priceType": "https://schema.org/SalePrice"
          },
          "seller": {
          "@type": "Organization",
          "name": "Example",
          "sameAs": "http://www.example.com/"
        }
      }
    ]
  }
}

Jednorazowy zakup

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "purchase",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    },
    "expectsAcceptanceOf": {
      "@type": "Offer",
      "price": 7.99,
      "priceCurrency": "USD",
      "seller": {
        "@type": "Organization",
        "name": "Example",
        "sameAs": "http://www.example.com/"
      }
    }
  }
}

Subskrypcje z 1 poziomem, wieloma poziomami lub dodatkami

{
  "actionAccessibilityRequirement": {
    "@type": "ActionAccessSpecification",
    "category": "subscription",
    "availabilityStarts": "2015-01-01T00:00Z",
    "availabilityEnds": "2015-12-31T00:00Z",
    "requiresSubscription": {
        "@type": "MediaSubscription",
        "name": "Example Package",
        "commonTier": true,
        "@id": "http://www.example.com/example_package"
    },
    "eligibleRegion": {
      "@type": "Country",
      "name": "US"
    }
  }
}

Subskrypcje i dodatki w różnych wersjach

Poniżej znajdziesz opis sposobu stosowania subskrypcji na różnych poziomach i dodatków:

  • W modelu subskrypcji z jednym poziomem dostawca usług ma jeden poziom subskrypcji. Wszyscy subskrybenci mają dostęp do tych samych treści, niezależnie od pakietu subskrypcji.
  • W modelu subskrypcji z różnymi poziomami dostawca usług oferuje kilka poziomów subskrypcji, np. Gold, Silver i Bronze. Użytkownicy, którzy mają subskrypcję wyższego poziomu, mogą uzyskać dostęp do wszystkich treści z niższych poziomów. Użytkownicy, którzy mają subskrypcję niższego poziomu, nie mogą jednak uzyskać dostępu do treści z wyższego poziomu. przykład treści 1
  • W modelu subskrypcji dodatków dostawca usług umożliwia użytkownikom rozszerzenie uprawnień i dodanie treści do subskrypcji podstawowej. Użytkownicy mogą dodawać dowolną liczbę treści. przykład treści 2

Ogólny szablon jednostki

Oto przykład ogólnego szablonu jednostki:

Szablon

{
  "@context": "http://schema.org",
  "@type": "DataFeed",
  "dateModified": "2018-07-20T00:44:51Z",
  "dataFeedElement": [
    {  },
    {
       "@context": ["http://schema.org", {"@language": "en"}],
       "@type": "VideoGame",
       "@id": "http://www.example.com/game007",
       "url": "http://www.example.com/game007",
       "name": "Games Bond 007",
       "exampleOfWork": [
        {  },
        {
           "@type": "VideoGame",
            "@id": "http://www.example.com/game007Stadia",
            "url": "http://www.example.com/game007Stadia",
            "name": "Games Bond 007",
            // Other properties
           "potentialAction": [
              {  },
              {
                  "@type": "PlayGameAction",
                  "target": [
                  {  },
                  {  }
                  ],
                 "actionAccessibilityRequirement": [
                 {  },
                 {  }
                 ]
              }
          ],
    ...
    }
  ]
}

Definicje typów uporządkowanych danych

W tej sekcji znajdziesz szczegółowe informacje o właściwościach znaczników treści dla typu jednostki VideoGame. Aby treści mogły się wyświetlać w wynikach wyszukiwania, musisz w nich uwzględnić wymienione poniżej wymagane właściwości. Zachęcamy też do dodawania właściwości wysoce zalecanych, aby wzbogacać informacje o treściach dla wygody użytkowników i ułatwiać nam uzgadnianie informacji o podmiotach z Grafem wiedzy Google.

Tabela specyfikacji VideoGame (Work)

Właściwość Oczekiwany typ Opis
@context Text Wymagany. Zawsze ustawiona na ["http://schema.org", {"@language": "xx"}].
  • Wartość xxWhere określa język ciągów tekstowych w pliku danych. Każdy kontekst jednostki głównej musi mieć ustawiony odpowiedni kod języka w formacie BCP 47.@language Jeśli na przykład język jest ustawiony na hiszpański, nazwy są traktowane jako hiszpańskie, nawet jeśli język napisów lub dubbingu to angielski.
@type Text Wymagany. Zawsze ustawiona na VideoGame.
@id Adres URL Wymagany. Identyfikator treści w formacie URI, np. https://example.com/1234abc. @id, musi spełniać te wymagania:
  • Niepowtarzalny globalnie w Twoim katalogu.
  • Statyczny. Ten identyfikator musi być stały i nie może zmieniać się w czasie, nawet jeśli zmieni się właściwość url gry. Jest traktowany jako ciąg nieprzejrzysty, więc nie musi być działającym linkiem.
  • W formie ujednoliconego identyfikatora zasobu (URI).
  • Domena użyta w wartości @id musi należeć do Twojej organizacji.

Ponieważ element url podmiotu spełnia wszystkie wymagania identyfikatora, zalecamy używanie elementu url podmiotu jako jego elementu @id. Więcej informacji znajdziesz w sekcji Identyfikator.

url Adres URL Wymagany. Kanoniczny adres URL treści, który jest używany przez Google do dopasowywania treści w pliku danych do treści w bazach danych Google. url musi spełniać te wymagania:
  • url musi być globalnie niepowtarzalny.
  • url musi zawierać działający kanoniczny adres URL, który Google może zindeksować.

W przypadku precyzyjnego linku do odtwarzania zobacz właściwość urlTemplate obiektu target.

name Text Nazwa gry.
  • Użyj tablicy, aby podać nazwy w różnych językach. Więcej informacji znajdziesz w przykładzie Wiele regionów i języków.
  • Pamiętaj, że w przypadku każdego języka i kraju można podać tylko jedną nazwę.
description Text Zdecydowanie zalecane. Streszczenie gry. Limit znaków: 300.
genre Text Uporządkowana lista wszystkich odpowiednich gatunków. Na przykład: ["Action", "Role playing"]
image ImageObject Zdecydowanie zalecane. Obrazy związane z grą. Więcej informacji o właściwościach wymaganych i opcjonalnych, które należy uwzględnić w przypadku image, znajdziesz w sekcji Właściwości obrazów.
applicationCategory Text Opcjonalnie. Typ aplikacji. Ustaw wartość na Game.
exampleOfWork VideoGame Wymagany: wydanie VideoGame. Ten obiekt VideoGame (Wydanie) zawiera też szczegóły precyzyjnego linku. Więcej informacji znajdziesz w specyfikacji VideoGame (Edition).
playMode Text lub GamePlayMode Opcjonalnie. Wskazuje, czy gra jest wieloosobowa, kooperacyjna czy dla 1 gracza. Grę można oznaczyć jednocześnie jako wieloosobową, kooperacyjną i dla 1 gracza. Akceptuje te wartości:
  • SINGLE_PLAYER
  • LOCAL_MULTI_PLAYER
  • ONLINE_MULTI_PLAYER
  • LOCAL_COOP
  • ONLINE_COOP

Tabela specyfikacji VideoGame (Edition)

Właściwość Oczekiwany typ Opis
@type Text Wymagany. Zawsze ustawiona na VideoGame.
@id Adres URL Wymagany. Identyfikator treści w formacie URI, np. https://example.com/1234abc.@id, musi spełniać te wymagania:
  • Niepowtarzalny globalnie w Twoim katalogu.
  • Statyczny. Ten identyfikator musi być stały i nie może zmieniać się w czasie, nawet jeśli zmieni się właściwość url gry. Jest traktowany jako ciąg nieprzejrzysty, więc nie musi być działającym linkiem.
  • W formie ujednoliconego identyfikatora zasobu (URI).
  • Domena użyta w wartości @id musi należeć do Twojej organizacji.

Ponieważ element url podmiotu spełnia wszystkie wymagania identyfikatora, zalecamy używanie elementu url podmiotu jako jego elementu @id. Więcej informacji znajdziesz w sekcji Identyfikator.

url Adres URL Wymagany. Kanoniczny adres URL treści, który jest używany przez Google do dopasowywania treści w pliku danych do treści w bazach danych Google. url musi spełniać te wymagania:
  • url musi być globalnie niepowtarzalny.
  • url musi zawierać działający kanoniczny adres URL, który Google może zindeksować.

W przypadku precyzyjnego linku do odtwarzania zobacz właściwość urlTemplate obiektu target.

name Text Nazwa gry.
  • Użyj tablicy, aby podać nazwy w różnych językach. Więcej informacji znajdziesz w przykładzie Wiele regionów i języków.
  • Pamiętaj, że w przypadku każdego języka i kraju można podać tylko jedną nazwę.
description Text Zdecydowanie zalecane. Streszczenie gry. Limit znaków: 300.
genre Text Uporządkowana lista wszystkich odpowiednich gatunków. Na przykład: ["Action", "Role playing"]
image ImageObject Zdecydowanie zalecane. Obrazy związane z grą. Więcej informacji o właściwościach wymaganych i opcjonalnych, które należy uwzględnić w przypadku image, znajdziesz w sekcji Właściwości obrazów.
applicationCategory Text Opcjonalnie. Typ aplikacji. Ustaw wartość na Game.
playMode Text lub GamePlayMode Opcjonalnie. Wskazuje, czy gra jest wieloosobowa, kooperacyjna czy dla 1 gracza. Grę można oznaczyć jednocześnie jako wieloosobową, kooperacyjną i dla 1 gracza. Akceptuje te wartości:
  • SINGLE_PLAYER
  • LOCAL_MULTI_PLAYER
  • ONLINE_MULTI_PLAYER
  • LOCAL_COOP
  • ONLINE_COOP
potentialAction PlayGameAction

Wymagane, jeśli ma zastosowanie. Obiekt Action markup, który zawiera szczegóły działania.

Użyj tablicy, aby określić różne precyzyjne linki w wielu regionach. Więcej informacji znajdziesz w przykładzie Wiele regionów i języków.

gameEdition Text

Wymagany. Wydanie tej gry.

Na przykład popularna gra „Shadow of the Tomb Raider” jest dostępna w 4 wersjach: „Croft Edition”, „Standard Edition”, „Digital Deluxe Edition” i „Ultimate Edition”.

gamePlatform Text Wymagany. Platforma lub system elektroniczny używany do grania w grę wideo.
releasedEvent PublicationEvent Zdecydowanie zalecane PublicationEvent służy do określania oryginalnej (globalnej lub lokalnej) wersji treści opublikowanej przez wydawcę.
releasedEvent.@type Text Wymagany. Pamiętaj, aby zawsze ustawiać tę właściwość na PublicationEvent.
releasedEvent.Location Kraj Wymagany. Regiony powiązane z tym wydarzeniem związanym z wprowadzeniem na rynek.

Używaj kodów krajów w formacie ISO 3166. Aby wskazać cały świat, ustaw wartość EARTH.

releasedEvent.startDate Data lub godzina Zalecane Wymagane w przypadku ExclusiveEvent. Data rozpoczęcia publikacji podmiotu.
releasedEvent.endDate Data lub godzina Opcjonalnie. Jest to data wygaśnięcia praw do treści.
releasedEvent.publishedBy Organization lub Person Opcjonalnie. Organizacja lub osoba, która opublikowała tę jednostkę.
contentRating Text Wymagane w przypadku gier dla dorosłych, zdecydowanie zalecane w innych przypadkach. Ogólna ocena treści. Jeśli ocena treści jest podana w formie ciągu tekstowego, akceptowane są 2 warianty:
  • Agencja ratingowa poprzedzona oceną z białym znakiem między nimi. Na przykład ocena „Mature” przyznana przez agencję „Entertainment Software Rating Board” w Stanach Zjednoczonych musi być opisana jako Entertainment Software Rating Board Mature.
  • Wartość RATING NOT KNOWN (wielkość liter nie ma znaczenia) oznacza, że nie znasz oceny gry.
publisher Organization lub Person Opcjonalnie. Organizacja lub osoba, która opublikowała tę jednostkę.
contributor Organization lub Person Opcjonalnie. Dodatkowy współtwórca tej encji.

Tabela specyfikacji obrazu

Działania w Grach Play wykorzystują schemat działań związanych z multimediami, aby określić wymagania dotyczące obrazów. Więcej informacji znajdziesz w specyfikacjach schematu obrazu.

Oto inne wymagania, o których trzeba pamiętać.

Format obrazu i contentAttributes Minimalna rozdzielczość (w pikselach)
16:9, kultowy plakat 3840 x 2160
2:3, kultowy plakat 1000 x 1500
4:3, kultowy plakat 800x600
1:1, kultowy plakat 600 x 600
3:4, kultowy plakat 600 x 800
16:9, kultowe tło [preferowane] lub scenaStill 3840 x 2160
2:3, kultowe tło [preferowane] lub scenaStill 1000 x 1500
3:4, kultowe tło [preferowane] lub scenaStill 600 x 800

Wymagania dotyczące formatu

Musisz przestrzegać tych wymagań dotyczących formatu w przypadku rozmiaru, jakości i innych aspektów obrazu:

  • Dołącz plakaty w najwyższej rozdzielczości i sceneStills, które masz w przypadku gry.
  • Obraz musi być w formacie JPG, PNG lub WebP.
  • Adres URL obrazu musi być dostępny do pobrania i zindeksowania.
  • Rozmiar pliku nie może przekraczać 20 MB.
  • Preferujemy obrazy, które sprawdzają się zarówno w przypadku smallFormat, jak i largeFormat.
  • Obraz nie może zawierać:

    • rozmyty, rozpikselowany, obrócony lub niskiej jakości obraz;
    • nie licencjonowane lub pochodzące z banku zdjęć;
    • nagość,
    • Treści niezgodne z prawem.
  • Możesz uwzględnić rozmiary obrazów inne niż wymienione w tabeli powyżej.

Przykłady

W sekcjach poniżej znajdziesz przykłady plików danych w różnych scenariuszach.

Przykładowy plik danych z jedną jednostką VideoGame

Oto przykład encji VideoGame, która reprezentuje grę „Space Wars Made Up Game”. Pamiętaj, że aby ta encja była widoczna dla Google, musi być umieszczona w kopercie pliku danych w pliku JSON.

{
   "@context": ["http://schema.org", {"@language": "en"}],
   "@type":"DataFeed",
   "dateModified":"2021-07-20T00:44:51Z",
   "dataFeedElement":[
      {
         "@context": ["http://schema.org", {"@language": "en"}],
         "@id":"https://www.examplegame.com/VideoGame007",
         "@type":"VideoGame",
         "url":"https://www.examplegame.com/games/VideoGame007",
         "name":"Space Wars Made Up Game",
         "description":"Space Wars offers an immersive RPG experience coupled with realistic gameplay.",
         "genre":[
            "Role playing"
         ],
         "applicationCategory":"Game",
         "publisher":{
            "name":"Made Up Media",
            "@id":"https://www.examplegame.com/uniuqe-id-org",
            "@type":"Organization"
         },
         "contributor":[
            {
               "roleName":"developer",
               "name":"Alpha Labs Man Made Studio",
               "@id":"https://www.studionice.com/uniuqe-id-alpha",
               "@type":"Organization"
            }
         ],
         "playMode":[
           "SINGLE_PLAYER", "LOCAL_MULTI_PLAYER", "ONLINE_MULTI_PLAYER", "LOCAL_COOP", "ONLINE_COOP"
         ],
         "image":[
            {
               "@context":"http://schema.org",
               "@type":"ImageObject",
               "name":"keyart_1X1_3X",
               "contentUrl":"https://lh3.googleusercontent.com/ept4",
               "copyrightHolder":{
                  "@type":"Organization",
                  "name":"Studio Nice"
               },
               "additionalProperty":[
                  {
                     "@type":"PropertyValue",
                     "name":"contentAttributes",
                     "value":[
                         "SMALLFORMAT", "LARGEFORMAT", "SCENESTILL", "CENTERED", "NOTITLE", "NOLOGO"
                     ]
                  }
               ]
            }
         ],
         "exampleOfWork":{
            "@id":"https://www.examplegame.com/VideoGame007/version/v3",
            "name":"Space Wars Made Up Game",
            "description":"Space Wars offers an immersive RPG experience coupled with realistic gameplay.",
            "gameEdition":"Early Access",
            "url":"https://www.examplegame.com/VideoGame007/version/v3/stream",
            "contentRating":[
               "Entertainment Software Rating Board Mature",
               "Pan European Game Information 12",
               "Unterhaltungssoftware Selbstkontrolle Video Game Rating System USK 12"
            ],
            "applicationCategory":"Game",
            "releasedEvent":[
               {
                  "@type":"PublicationEvent",
                  "startDate":"2020-11-30",
                  "location":{
                     "@type":"Country",
                     "name":"US"
                  }
               }
            ],
            "potentialAction":{
               "@type":"PlayGameAction",
               "gameAvailabilityType":"DEMO",
               "target":[
                  {
                     "@type":"EntryPoint",
                     "urlTemplate":"https://www.examplegame.com/VideoGame007/play",
                     "actionPlatform":[
                        "http://schema.org/DesktopWebPlatform",
                        "http://schema.org/MobileWebPlatform",
                        "http://schema.org/AndroidPlatform",
                        "http://schema.org/AndroidTVPlatform",
                        "http://schema.org/IOSPlatform"
                     ]
                  }
               ],
               "actionAccessibilityRequirement":[
                  {
                     "@type":"ActionAccessSpecification",
                     "availabilityStarts": "2015-01-01T00:00Z",
                     "availabilityEnds": "2015-12-31T00:00Z",
                     "eligibleRegion":{
                        "@type":"Country",
                        "name":[
                           "US"
                        ]
                     },
                     "category":"subscription",
                     "requiresSubscription":{
                        "@type":"MediaSubscription",
                        "name":"",
                        "@id":""
                     }
                  }
               ],
            },
            "gamePlatform": "Google Stadia",
            "publisher":{
               "name":"Made Up Media",
               "@id":"https://www.examplegame.com/uniuqe-id-org",
               "@type":"Organization"
            },
            "contributor":[
               {
                  "roleName":"developer",
                  "name":"Alpha Labs Man Made Studio",
                  "@id":"https://www.studionice.com/uniuqe-id-alpha",
                  "@type":"Organization"
               }
            ]
         }
      }
   ]
}

Przykładowy obraz z 2 postaciami z gry

Ilustracja przedstawiająca kobietę i ptaka na polu.
{
  "@context": [ "http://schema.org", { "@language": "en" } ],
  "@type": "VideoGame",
  "@id": "http://www.examplegame.com/videoGame1",
  "url": "http://www.examplegame.com/videoGame1",

  ...,

  "image": {
    "@context": "http://schema.org",
    "@type": "ImageObject",
    "name": "Mauren and Lord Wingflap!",
    "Keywords": "Mauren, Lord Wingflap the Destroyer",
    "contentUrl": "http://example.com/images/mountain-view.jpg",
    "character": [
      { "@type": "Person", "name": "Mauren" },
      { "@type": "Person", "name": "Lord Wingflap the Destoyer" }
    ],
    "copyrightHolder": {
      "@type": "Organization",
      "name": " ExampleOrganization Studios, Inc."
    },
    "inLanguage": "en-US",
    "audience": {
        "@type": "Audience",
        "geographicArea": [{"@type": "Country", "name": "US"},
                           {"@type": "Country", "name": "GB"}]
    },
    "additionalProperty": [
      {
        "@type": "PropertyValue",
        "name": "contentAttributes",
        "value": [ "iconic", "background", "rightCentered", "noTitle", "noLogo",
                   "noCopyright", "noMatte", "smallFormat", "largeFormat"]
      }
    ]
  }
}

Obsługa wielu regionów i języków (internacjonalizacja)

VideoGame może być dostępny w wielu regionach i językach.

{
  "@context": ["http://schema.org", {"@language": "en"}],
  "@type": "VideoGame",
  "@id": "http://www.example.com/my_favorite_game",
  "url": "http://www.example.com/my_favorite_game",
  "name": [
    {
      "@language": "en-us",
      "@value": "My Favorite Game"
    },
    {
      "@language": "es-mx",
      "@value": "mi juego favorito"
    },
    {
      "@language": "ja-jp",
      "@value": "私のfavourite game"
    }
  ],
  "description": [
    {
      "@language": "en-us",
      "@value": "Jenny meets Paul."
    },
    {
      "@language": "es-mx",
      "@value": "Jenny conoce a paul."
    },
    {
      "@language": "ja-jp",
      "@value": "PaulとJennyが会う。"
    }
  ],
  "potentialAction": [
    {
      "@type": "PlayGameAction",
      "gameAvailabilityType": "DEMO",
      "additionalType": "DownloadPlayAction",
      "target": {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/my_favorite_game?autoplay=true",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform"
        ]
      }
      "actionAccessibilityRequirement": {
        "@type": "ActionAccessSpecification",
        "category": "purchase",
        "availabilityStarts": "2021-06-24T11:00:00Z",
        "availabilityEnds": "2041-06-24T11:00:00Z",
        "eligibleRegion": [
          {
            "@type": "Country",
            "name": "US"
          },
          {
            "@type": "Country",
            "name": "MX"
          }
        ]
      },
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "name": "contentLanguage",
          "value": [
            "en",
            "es"
          ]
        }
      ],
      "expectsAcceptanceOf": {
        "@type": "Offer",
        "priceSpecification": [
          {
            "@type": "UnitPriceSpecification",
            "price": 19.99,
            "priceCurrency": "USD",
            "priceType": "https://schema.org/ListPrice"
          },
          {
            "@type": "UnitPriceSpecification",
            "price": 360.00,
            "priceCurrency": "MXN",
            "priceType": "https://schema.org/ListPrice"
          }
        ],
        "seller": {
          "@type": "Organization",
          "name": "My Favorite Game Publisher"
        }
      }
    },
    {
      "@type": "PlayGameAction",
      "gameAvailabilityType": "DEMO",
      "additionalType": "DownloadPlayAction",
      "target": {
        "@type": "EntryPoint",
        "urlTemplate": "http://www.example.com/jp/my_favorite_game?autoplay=true",
        "actionPlatform": [
          "http://schema.org/DesktopWebPlatform",
          "http://schema.org/MobileWebPlatform"
        ]
      }
      "actionAccessibilityRequirement": {
        "@type": "ActionAccessSpecification",
        "category": "purchase",
        "availabilityStarts": "2021-07-24T11:00:00Z",
        "availabilityEnds": "2041-07-24T11:00:00Z",
        "eligibleRegion": [
          {
            "@type": "Country",
            "name": "JP"
          }
        ]
      },
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "name": "contentLanguage",
          "value": [
            "ja"
          ]
        }
      ],
      "expectsAcceptanceOf": {
        "@type": "Offer",
        "priceSpecification": [
          {
            "@type": "UnitPriceSpecification",
            "price": 2189,
            "priceCurrency": "JPY",
            "priceType": "https://schema.org/ListPrice"
          }
        ],
        "seller": {
          "@type": "Organization",
          "name": "My Favorite Game Publisher"
        }
      }
    }
  ],
  // Other properties...
}