Действия в игре
Обзор
В этом документе описываются действия Play Game для видеоигр, перечисляются требования к схеме и подробно описывается процесс настройки для запуска функции.
Введение в игровые действия




Функция «Играть в игру» для видеоигр позволяет пользователям играть прямо со страницы результатов поиска (SRP) на компьютере или мобильном устройстве. При поиске игры, с которой связано хотя бы одно действие «Играть в игру», пользователи видят действие «Играть в игру» на вкладке «Обзор» страницы результатов поиска (OSRP) или в панели знаний. Это работает для демоверсий и полных версий игр, доступных бесплатно, по подписке или по отдельности, и доступных для потоковой передачи из облака на компьютере или мобильном устройстве, а также для загрузки через локальные клиентские приложения на компьютере или консоли.
Действия «Играть в игру» основаны на фиде, содержащем информацию о вашем каталоге игр. Фид — это JSON-объект, содержащий коллекцию сущностей. Сущность — это объект schema.org
, представляющий игру в вашем каталоге и связанную с ней глубокую ссылку для потоковой передачи игры (демоверсии, пробной версии с мгновенным запуском или полной версии).
Чтобы Google мог получить доступ к вашему фиду, вам необходимо сохранить его в файле и разместить его в месте, где Google сможет получить к нему доступ. Чтобы ваш контент был актуальным, Google регулярно скачивает файл фида с вашего хостинга.
В следующих разделах мы подробно рассмотрим каждое из этих требований.
Начать
Как указано в предыдущем разделе, ваши обязанности как поставщика услуг включают следующее:
- Изучите информацию, необходимую для создания канала, ее источники и доступность, а также то, как она попадает в канал.
- Создайте канал, содержащий необходимые сведения о каждой игровой сущности в вашем каталоге.
- Разместите канал на сервере или в облачном хранилище и разрешите Google регулярно его загружать.
- Отвечайте на вопросы, поднятые Google, и устраняйте их. Они могут быть связаны с качеством или структурой самих JSON-файлов.
- Поддерживайте актуальность ленты по мере развития вашего каталога.
- Обеспечить сохранение качества корма после запуска.
Давайте разберемся в этом подробнее.
Прежде чем начать
Прежде чем приступить к созданию фида, рекомендуем вам изучить требования к метаданным Play Game Actions и собрать всю необходимую информацию в одном месте. Перед созданием фида мы рекомендуем следующее:
- Ознакомьтесь с требованиями к метаданным для объекта
VideoGame
. - Соберите метаданные.
- Внимательно изучите обязательные и рекомендуемые свойства. Google использует эти свойства для сверки вашего контента в ленте с контентом в базах данных Google. Чем больше метаданных вы предоставите для своего контента, тем точнее Google сможет сопоставить его.
Понимать, как использовать термины «Работы» и «Издания» в этой документации.
- Произведение : абстрактное понятие видеоигры. В частности, метаданные, такие как название, разработчик, описание игры и издатель, являются атрибутами произведения.
- Издание : конкретная версия видеоигры. В частности, метаданные, такие как год издания, название платформы и внешние ссылки, являются атрибутами издания.
Например, «Shadow of the Tomb Raider» — это произведение, но каждая его версия — это издание. В этом случае у произведения «Shadow of the Tomb Raider» может быть издание для Stadia, одно издание для PlayStation, одно издание для раннего доступа на Stadia и так далее.
Это различие особенно важно в ленте, где оно может быть не сразу очевидным. Существует два объекта VideoGame:
- VideoGame (Work) — это сущность VideoGame «верхнего уровня»:
-
exampleOfWork
является свойством VideoGame (Work) и определяет один или несколько экземпляров VideoGame (Edition). - Для каждой Видеоигры (Работы) должен быть хотя бы один
exampleOfWork
VideoGame (Издание). - VideoGame (Edition) — это сущность VideoGame «низкого уровня».
Полезно помнить, что у одного произведения может быть несколько изданий. Мы рекомендуем максимально группировать эти издания. Это помогает системам Google использовать всю необходимую информацию о видеоигре и показывать её в результатах поиска.
Поймите два ключевых свойства и их требования. Крайне важно правильно их определить, прежде чем мы перейдем к созданию фида, что является следующим шагом.
Канонический URL (url)
Канонический URL ( url
) помогает Google точно согласовывать содержимое вашего каталога с содержимым в базах данных Google.
Канонический URL — это URL страницы, который Google считает наиболее репрезентативным среди дубликатов страниц вашего сайта. Например, если у вас есть URL одной и той же страницы (например, example.com?dress=1234 и example.com/dresses/1234), Google выберет один из них в качестве канонического. (Источник: Объединение дубликатов URL )
Ниже приведены требования к каноническому URL:
-
url
должен быть глобально уникальным. -
url
должен содержать рабочий канонический URL, который может сканировать Google.
Идентификатор (@id)
Идентификатор (@id) должен соответствовать следующим требованиям:
- Глобально уникальный для вашего каталога:
- Например, не используйте один и тот же
@id
для двух разных видеоигр.
- Например, не используйте один и тот же
- Статика:
- Вы не сможете изменить
@id
позже.
- Вы не сможете изменить
- В форме унифицированного идентификатора ресурса (URI):
- Если локальный идентификатор (ID) вашего контента не имеет формата URI, добавьте к ID свой домен, чтобы выполнить это требование; например, если ID вашего контента —
1234abc
, а ваш домен —https://example.com
,@id
может бытьhttps://example.com/1234abc
. -
@id
не обязательно должен быть рабочим URL-адресом; он должен иметь только формат URI. - Домен, используемый в
@id
(например,https://example.com
), должен принадлежать вашей организации.
- Если локальный идентификатор (ID) вашего контента не имеет формата URI, добавьте к ID свой домен, чтобы выполнить это требование; например, если ID вашего контента —
Поскольку url
сущности отвечает всем требованиям к идентификатору (то есть должен быть глобально уникальным, статичным и иметь форму URI), мы рекомендуем использовать url
сущности в качестве @id
в тех случаях, когда это имеет смысл.
Понять и определить требования к глубоким ссылкам
Когда пользователь инициирует действия в Play Game с контентом, Google использует глубинную ссылку этого контента, чтобы перенаправить пользователя непосредственно к контенту в вашем приложении или на платформе. Имейте в виду следующее:
- Диплинки должны открывать целевой контент на всех указанных платформах. Разные платформы могут иметь разные диплинки. Например, диплинк, работающий на десктопном сайте, может отличаться от диплинка, работающего на мобильном устройстве. Для каждой игры проверьте, есть ли у неё разные диплинки в зависимости от платформы.
- Глубокие ссылки могут включать параметры (&) или теги привязки (#).
- Чтобы гарантировать доступность вашего контента на различных платформах Google (Поиск, Ассистент и Android TV), необходима глубокая ссылка.
Поскольку url
сущности отвечает всем требованиям к идентификатору (то есть должен быть глобально уникальным, статичным и иметь форму URI), мы рекомендуем использовать url
сущности в качестве @id
в тех случаях, когда это имеет смысл.
Платформа | Описание |
---|---|
http://schema.org/DesktopWebPlatform | Поисковая платформа в веб-браузере настольного компьютера. |
http://schema.org/MobileWebPlatform | Поисковая платформа в мобильном веб-браузере. |
http://schema.org/AndroidPlatform | Поисковая платформа в приложении Android. |
http://schema.org/AndroidTVPlatform | Платформа Android TV в приложении Android TV. |
http://schema.org/IOSPlatform | Поисковая платформа в приложении iOS. |
Определите требования к доступу к играм в вашем каталоге: задайте себе следующие вопросы и убедитесь, что есть способ определить ответы на них с помощью метаданных в ленте.
- Необходимо ли пользователям входить в ваше приложение или на платформу для доступа к контенту?
- Нужна ли пользователям подписка?
- Нужно ли пользователям совершать покупки, чтобы играть в игру?
- Меняются ли требования к доступу со временем?
- Зависят ли требования к доступу от местоположения устройства?
Если вы предлагаете более одного пакета подписки, который могут приобрести ваши пользователи, узнайте, что такое commonTier
и как он применяется к вашей интеграции с Google.
Типы платного доступа
На сегодняшний день Play Game Actions поддерживает только следующие типы платного доступа :
Значение категории | Тип платного доступа |
---|---|
nologinrequired | Покупка или вход в систему не требуются. |
free | Пользователь должен быть авторизован, но ему не нужна платная подписка. |
subscription | У пользователя должна быть активная подписка. Доступ не зависит от уровня подписки. |
subscription | У пользователя должна быть активная подписка. Доступ не зависит от уровня подписки. |
purchase | Контент доступен в течение неопределенного периода времени после покупки. |
rental | Контент доступен в течение ограниченного периода времени после покупки. |
Эти значения категорий будут использоваться позже при создании фида. Кроме того, имейте в виду, что категория rental
в предыдущей таблице на данный момент совершенно необязательна и может быть реализована в будущих усовершенствованиях продукта. В настоящее время продукт из фида использует только значения категорий free
, nologinrequired
, subscription
и purchase
.
Наконец, быстро просмотрите образец ленты , чтобы получить представление о том, что мы хотим получить в конечном итоге.
Понимание вышеизложенного и обеспечение наличия метаданных для представления ответов (на эти вопросы) является достаточным для перехода к этапу создания канала.
Создайте свой канал
Лента действий в играх Play — это JSON-объект, содержащий коллекцию сущностей, представляющих видеоигры в вашем каталоге. Вам необходимо предоставить фид в виде файла или нескольких файлов и разместить его на сервере или в облачном хранилище, чтобы Google мог регулярно его загружать.
Соблюдайте требования к размеру, количеству и формату файла подачи.
Вам необходимо соблюдать следующие требования:
- Все файлы каналов должны иметь расширение
.json
. - Убедитесь, что имена файлов не содержат пробелов.
- Не шифруйте файл вашего канала.
- Закодируйте файл вашего канала в формате UTF-8 (проверьте настройки редактора файлов).
- Если размер файла вашего фида превышает 1 ГБ в несжатом виде, разделите его на несколько файлов.
- Пока размер файла не превышает 1 ГБ, ограничений на количество объектов, которые можно включить в один файл, или на количество файлов, которые вы в конечном итоге отправите в Google в рамках отправки фида, нет.
- Убедитесь, что файл закодирован без BOM, согласно спецификации JSON . Для проверки этого в ОС Linux
hexdump file.json | head -n 1
не должна начинаться сBBEF
по адресу0x00
.
Соблюдайте требования к содержанию корма
Необходимо соблюдать следующие требования к содержанию:
- В фиде не должно быть устаревших сущностей. Устаревшие сущности — это сущности, для которых
availabilityEnds
глубинной ссылки установлено на прошедшую дату, или сущности, которые больше не доступны на вашем сайте. - Все глубокие ссылки, такие как
urlTemplate
, и все URL-адреса, такие какurl
, включаемые в фид, должны быть рабочими URL-адресами. Не используйте URL-адреса для контроля качества, разработки или любые другие типы нерабочих URL-адресов. - Все URL-адреса, такие как
url
, должны быть каноническими , как упоминалось в предыдущем разделе. - Каждая сущность в вашем фиде должна иметь следующие свойства:
- Уникальный идентификатор:
@id
- Уникальный URL:
url
- Уникальная глубокая ссылка:
urlTemplate
- Уникальный идентификатор:
При создании ленты мы предлагаем вам следующие рекомендации:
- Изучите структуру канала в деталях.
- Начните с образца корма.
- Выберите до пяти репрезентативных сущностей из вашего каталога. Выберите сущности с достаточно сложной структурой, но при этом типичной для сущностей в каталоге, и создайте для них фид.
- Отправьте его своему назначенному представителю Google для быстрой проверки.
- После устранения всех ошибок в образце фида расширьте его, включив в него все сущности из вашего каталога.
- Чтобы убедиться, что ваш фид содержит все сущности из вашего каталога, сравните количество сущностей в фиде с количеством элементов в вашем каталоге.
Размещайте свой канал
После того, как файл фида будет готов, разместите его в безопасном месте. Google будет регулярно загружать фид, чтобы гарантировать актуальность вашего контента. Мы поддерживаем следующие методы хостинга:
Метод хостинга | Поддержка аутентификации |
---|---|
Облачное хранилище Google | Предоставьте разрешение на просмотр объектов хранилища для 088794101-100000002-account@partnercontent.gserviceaccount.com |
HTTPS | Требуется предоставить имя пользователя и пароль или сертификаты клиента HTTP . |
SFTP | Требуется предоставить пароль, ключ и фразу или и то, и другое. |
AWS S3 | Требуется предоставить общий идентификатор ключа и ключ доступа для контейнера AWS S3. |
После загрузки файла фида в хост-систему обратитесь в команду Play Game Actions для проверки файла фида.
Отправьте свой канал на проверку
После размещения файла фида обратитесь к назначенному вам контактному лицу Play Game Actions, чтобы начать процесс проверки фида. В этом сообщении обязательно укажите следующую информацию:
- Обзор/Описание : Сообщите нам, предоставляете ли вы образец фида или полную версию продукта. Если вы предоставляете образец фида, сообщите нам предполагаемое время запуска продукта, если это возможно.
- Расположение хоста : URL-адрес вашего файла канала.
- Аутентификация хоста : укажите учётные данные, чтобы Google мог получить файл фида с вашего хоста, если это применимо. Подробнее см. в разделе «Размещение фида» .
- Тестовый аккаунт : тестовый аккаунт, который позволит команде Play Game Actions получить доступ к глубоким ссылкам в вашем приложении или на платформе для тестирования. Если в вашем фиде есть объекты на нескольких платформах, предоставьте тестовый аккаунт для каждой платформы.
- Значки : Предоставьте следующие пять значков. Они будут использоваться рядом с действиями «Играть» в поиске.
Категория | Размеры (пикс.) | Размер файла | Руководящие принципы |
---|---|---|---|
Действия в играх при поиске/трансляции/других | |||
16x16 | Размер файла всех иконок, за исключением 112x112 px, не может превышать 1 КБ. Размер файла значка размером 112x112 пикселей не может превышать 3 КБ. | Необходимы все пять размеров значка. Изображения должны соответствовать следующим требованиям:
| |
20x20 | |||
40x40 | |||
44x44 | |||
112x112 |
Образец

Как работает проверка фидов
Проверка кормов осуществляется в два этапа:
- Проверка структуры:
- Это первый этап проверочных мероприятий.
- Google предоставляет обратную связь по структуре JSON-файлов. Правильно ли сформирован JSON-файл? Есть ли в фиде все обязательные и рекомендуемые свойства? Соответствуют ли глубокие ссылки нашим требованиям к фидам?
- Этот этап требует нескольких обсуждений с Google и продолжается до тех пор, пока все отзывы не будут рассмотрены.
- Согласование метаданных:
- Это начинается только после того, как канал пройдет этап проверки структуры , и тогда Google начнет процесс согласования с Google Knowledge Graph.
- На этом этапе мы предоставляем обратную связь по метаданным, содержащимся в фиде. Для успешного запуска необходимо решить все проблемы. Например, на этом этапе вам может быть предложено исправить название игры или дату её выхода.
- Этот этап также требует нескольких двусторонних обсуждений с Google и продолжается до тех пор, пока все отзывы не будут рассмотрены.
Критерии приемлемости корма
Канал считается приемлемым для запуска, когда устранены все проблемы, блокирующие его, и Google сертифицировал качество метаданных, соответствующее планке запуска.
Обновляйте свой канал по мере необходимости.
Мы рекомендуем обновлять ленту ежедневно, но это в конечном итоге зависит от частоты изменений в вашем каталоге. Обратите внимание на следующие условия и советы:
- Google Search не поддерживает обновления в реальном времени.
- Поиск Google загружает ваш канал один раз в день и обычно индексирует контент в течение двух дней (после запуска).
- Если ожидается изменение доступности глубинных ссылок, используйте
availabilityStarts
иavailabilityEnds
для установки точных дат. - Если объект больше не доступен в вашем каталоге, полностью удалите его из ленты.
Ссылка
Обзор структуры корма
Лента действий в игре имеет следующую структуру:

Конверт потока данных
Конверт фида данных — это объект верхнего уровня в фиде действий Play Game. Он содержит массив объектов разметки контента (сущностей VideoGame (Work)), представляющих все видеоигры в вашем каталоге.
Свойство | Ожидаемый тип | Описание |
---|---|---|
@context | URL | Обязательно . Установите http://schema.org |
@type | Текст | Обязательно . Установите значение DataFeed . |
dateModified | ДатаВремя | Обязательно . Дата и время последнего изменения фида в формате ISO 8601 (включая часовой пояс). |
dataFeedElement | Вещь | Обязательно . Сущности вашего игрового каталога. |
Шаблон
{ "@context": "http://schema.org", "@type": "DataFeed", "dateModified": "2018-07-20T00:44:51Z", "dataFeedElement": [ {}, { }, { }, ... ] }
Объекты разметки контента
Объект разметки контента представляет собой отдельную сущность в вашем каталоге: VideoGame (Work). Объект содержит идентификатор контента и канонический URL-адрес, а также помогает описывать контент с помощью метаданных. Объект разметки контента для VideoGame (Work) имеет свойство exampleOfWork
, связывающее его с объектом VideoGame(Edition). Этот объект VideoGame(Edition) может содержать массив объектов разметки Action, что позволяет связать контент с несколькими объектами разметки Action. Например, контент может иметь отдельный объект разметки Action для каждого региона.
Объекты разметки действий
Объект разметки «Действие» описывает глубинную ссылку, ведущую пользователей в игру, и необходимый для игры уровень доступа. Этот объект является свойством ( potentialAction
) объекта разметки контента. Для действий «Игра» используйте объект спецификации доступа «Действие», чтобы указать ограничения доступа.
Свойство | Ожидаемый тип | Описание |
---|---|---|
@type | Текст | Обязательно . Всегда устанавливайте PlayGameAction . |
gameAvailabilityType | GameAvailabilityEnumeration или текст | Обязательно . Указывает тип доступности игрового контента, связанного с этим действием, например, полная версия или демоверсия. Допустимые значения: DEMO и FULL . |
additionalType | Текст | Обязательно . Указывает тип игрового действия, связанного с этой игрой. Допустимые значения:
|
target | Точка входа | Обязательно . Целевой объект , обеспечивающий отображение глубоких ссылок на различные платформы Google. |
target.@type | Текст | Обязательно . Всегда устанавливайте EntryPoint . |
target.urlTemplate | URL | Обязательно . Глубокая ссылка , которая перенаправляет пользователей в ваше приложение или платформу и запускает воспроизведение игры. |
target.inLanguage | Текст | Необязательно . Исходный язык серии в формате BCP 47 . |
target.actionPlatform | Текст | Обязательно . Платформы, сопоставленные с urlTemplate . Действия в игре поддерживают следующие значения:
Требования см. в разделе Типы платформ . |
actionAccessibilityRequirement | ActionAccessSpecification | Требуется . Объект спецификации доступа к действию , описывающий требования к доступу к содержимому. Подробнее см. в разделе Свойства спецификации доступа к действию . |
Шаблон
"potentialAction": { "@type": "PlayGameAction", "target": [ {}, { } ], "actionAccessibilityRequirement": [ { }, { } ] }
Цель
Объект target обеспечивает сопоставление глубокой ссылки с различными платформами Google. Этот объект является свойством ( target
) объекта разметки Action . Свойство urlTemplate
содержит глубокую ссылку, а свойство actionPlatform
— платформы, поддерживающие эту глубокую ссылку.
Пример
"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" ] } ]
Спецификация доступа к действию
Объект спецификации доступа Action описывает требования к доступу к контенту в зависимости от региона и периода времени. Этот объект является свойством actionAccessibilityRequirement
объекта разметки Action .
Пример цели с двумя глубокими ссылками
"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" ] } ]
Спецификация доступа к действию
Объект спецификации доступа Action описывает требования к доступу к контенту в зависимости от региона и периода времени. Этот объект является свойством actionAccessibilityRequirement
объекта разметки Action.
Свойство | Ожидаемый тип | Описание | |||
---|---|---|---|---|---|
actionAccessibilityRequirement.@type | Текст | Обязательно . Всегда устанавливайте значение ActionAccessSpecification . | |||
actionAccessibilityRequirement.category | Текст | Требуется . Требование доступа к контенту. Допустимые значения и дополнительная информация см. в разделе «Тип платного доступа» . Если объект представляет собой группу контента, необходимо установить категорию, соответствующую наименее ограничивающим требованиям к доступу к этому контенту. Например, если к игре предоставляется бесплатный доступ с помощью | |||
actionAccessibilityRequirement.availabilityStarts | Дата | Обязательно . Дата, начиная с которой действие станет доступно, в формате ISO 8601 (включая часовой пояс). Дату можно указать в будущем.
Мы требуем, чтобы соответствующий объект был указан в ленте как минимум за семь дней до даты | |||
actionAccessibilityRequirement.availabilityEnds | Дата | Обязательно . Дата, после которой действие станет недоступно, в формате ISO 8601 (включая часовой пояс). Дату можно указать в будущем.
Мы требуем, чтобы любые обновления даты | |||
actionAccessibilityRequirement.eligibleRegion | Страна , город , штат , геоформа или текст | Обязательно . Регионы, в которых доступен контент. Если контент доступен глобально, используйте специальную строку EARTH . Чтобы понять, что требуется, см. раздел «Свойства GeoShape» . | |||
actionAccessibilityRequirement.ineligibleRegion | Страна , город , штат , геоформа или текст | Обязательно, если применимо . Регионы, где контент ограничен. Вам не нужно предоставлять это свойство, если контент доступен везде в пределах eligibleRegion .Чтобы понять, что требуется, см. Свойства GeoShape . | |||
actionAccessibilityRequirement.requiresSubscription | МедиаПодписка | Обязательно, если применимо . Сведения о подписке, необходимые пользователям для доступа к контенту. Подробнее см. в разделе «Свойства подписки на медиа» .
| |||
actionAccessibilityRequirement.expectsAcceptanceOf | Предложение | Обязательно, если контент требует покупки . Подробности предложения, связанного с контентом. Укажите информацию о цене в следующих случаях:
Если цена равна 0,00, полностью удалите объект Offer и установите для |
Спецификация подписки на медиа
Объект подписки на медиа-контент описывает детали подписки, необходимые для доступа к контенту. Этот объект является свойством requiresSubscription
объекта спецификации доступа Action .
actionAccessibilityRequirement.category
— это subscription
, а ваша подписка включает несколько пакетов или уровней или поддерживает дополнения. Не указывайте это поле, если ваша подписка одноуровневая и предоставляет доступ ко всему контенту в каталоге.Свойство | Ожидаемый тип | Описание | |||
---|---|---|---|---|---|
requiresSubscription.@type | Текст | Обязательно . Всегда выбирайте MediaSubscription . | |||
requiresSubscription.@id | URL | Обязательно . Уникальный идентификатор подписки. Если контент доступен по разным подпискам, каждая подписка должна иметь уникальный идентификатор. | |||
requiresSubscription.name | Текст | Обязательно . Название подписки. Обратите внимание на следующее:
| |||
requiresSubscription.sameAs | URL | Необязательно . Страница с описанием подписки. | |||
requiresSubscription.identifier | Текст | Обязательно, если category — subscription , а commonTier — false. Уникальная строка для этой подписки, предоставляющая доступ к группе контента в вашем каталоге медиа.
| |||
requiresSubscription.commonTier | Булевое значение | Обязательно, если выбрана категория подписки. Подробнее о commonTier читайте в документации по требованиям Common Tier . |
Предложение недвижимости
Объект предложения описывает цену, связанную с контентом. Этот объект является свойством ( expectsAcceptanceOf
) объекта спецификации доступа Action . Его можно использовать для двух целей:
- Чтобы предоставить сведения о покупке игры, для этого варианта использования
actionAccessibilityRequirement.category
следует установить наpurchase
. - Чтобы предоставить сведения о покупке игры, когда она продается со скидкой, для этого варианта использования
actionAccessibilityRequirement.category
следует установить значениеpurchase
, а также следует предоставить два предложения на каждое действие: одно для предоставления сведений о розничной цене, а другое — о цене распродажи.
Свойство | Ожидаемый тип | Описание |
---|---|---|
expectsAcceptanceOf.@type | Текст | Обязательно - Всегда устанавливайте значение Offer . |
expectsAcceptanceOf.name | Текст | Необязательно - Название предложения. |
expectsAcceptanceOf.priceSpecification | ЦенаСпецификация | Обязательно - Информация о ценах на игру. |
expectsAcceptanceOf.priceSpecification.@type | Текст | Обязательно — всегда устанавливайте значение UnitPriceSpecification . |
expectsAcceptanceOf.priceSpecification.price | Число | Обязательно — цена покупки контента. Цена должна быть ненулевым положительным значением. Для игр с ценой 0.00 установите для actionAccessibilityRequirement.category значение `free`. |
expectsAcceptanceOf.priceSpecification.priceCurrency | Текст | Обязательно - Валюта цены в 3-буквенном формате ISO 4217 . |
expectsAcceptanceOf.priceSpecification.priceType | PriceTypeПеречисление или текст | Обязательно, если применимо - Тип цены, указанный в предложении. Если actionAccessibilityRequirement.category имеет значение purchase , это обязательное свойство, которое может принимать только 2 значения:
При предоставлении информации о ценах распродажи обязательными являются оба адреса: https://schema.org/ListPrice и https://schema.org/SalePrice . |
expectsAcceptanceOf.seller | Организация | Организация, предлагающая покупку контента. |
expectsAcceptanceOf.seller.@type | Текст | Всегда устанавливайте значение Organization . |
expectsAcceptanceOf.seller.name | Текст | Имя продавца. |
expectsAcceptanceOf.seller.sameAs | URL | URL-адрес веб-страницы, идентифицирующей продавца; например, домашняя страница продавца. |
Для каждого из поддерживаемых типов платного доступа пример ниже дает представление о том, как необходимо создавать actionAccessibilityObject
:
Бесплатно (вход в систему не требуется)
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "nologinrequired", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion": { "@type": "Country", "name": "US" } } }
Бесплатно (вход в систему не требуется) с пробным периодом в один час
{ "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 } } }
Бесплатно (требуется вход в систему)
{ "actionAccessibilityRequirement": { "@type": "ActionAccessSpecification", "category": "free", "availabilityStarts": "2015-01-01T00:00Z", "availabilityEnds": "2015-12-31T00:00Z", "eligibleRegion": { "@type": "Country", "name": "US" } } }
Разовая покупка с распродажей
{ "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/" } } ] } }
Разовая покупка
{ "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/" } } } }
Одноуровневые/многоуровневые/дополнительные подписки
{ "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" } } }
Многоуровневые подписки и дополнения
Ниже описывается, как применяются многоуровневые подписки и дополнения:
- В одноуровневой модели подписки поставщик услуг предлагает один уровень подписки. Все подписчики получают доступ к одному и тому же контенту, независимо от тарифного плана.
- В многоуровневой модели подписки поставщик услуг предлагает несколько уровней подписки, например, «Золотой», «Серебряный» и «Бронзовый». Пользователи с подпиской верхнего уровня получают доступ ко всему контенту нижнего уровня. Однако пользователи с подпиской нижнего уровня не могут получить доступ к контенту верхнего уровня.
- В модели подписки с дополнительными услугами поставщик услуг позволяет пользователям расширять свои права и добавлять контент к базовой подписке. Пользователи могут добавлять любое количество контента.
Общий шаблон сущности
Это пример общего шаблона сущности:
Шаблон
{ "@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": [ { }, { } ] } ], ... } ] }
Определения структурированных типов данных
В этом разделе представлена подробная информация о свойствах разметки контента для типа сущности VideoGame
. Для отображения вашего контента в результатах поиска необходимо включить перечисленные здесь обязательные свойства. Мы также рекомендуем вам включить настоятельно рекомендуемые свойства, чтобы предоставить больше информации о вашем контенте. Это улучшит пользовательский опыт и поможет нам в согласовании сущностей с Google Knowledge Graph.
Таблица спецификаций VideoGame (Work)
Свойство | Ожидаемый тип | Описание | |||
---|---|---|---|---|---|
@context | Текст | Обязательно . Всегда задаётся значение ["http://schema.org", {"@language": "xx"}] .
| |||
@type | Текст | Обязательно . Всегда выбирайте VideoGame . | |||
@id | URL | Обязательно . Идентификатор контента в формате URI, например, https://example.com/1234abc. @id должен соответствовать следующим требованиям:
Поскольку | |||
url | URL | Обязательно . Канонический URL-адрес контента, который Google использует для сопоставления контента в вашей ленте с контентом в базах данных Google. url должен соответствовать следующим требованиям:
Для получения глубокой ссылки на воспроизведение см. свойство | |||
name | Текст | Название игры.
| |||
description | Текст | Настоятельно рекомендуется. Краткий обзор игры. Лимит — 300 символов.
| |||
genre | Текст | Упорядоченный список всех соответствующих жанров. Например: ["Action", "Role playing"] | |||
image | ImageObject | Настоятельно рекомендуется. Изображения, относящиеся к игре. Подробнее об обязательных и необязательных свойствах image см. в разделе «Свойства изображения» . | |||
applicationCategory | Текст | Необязательно. Тип программного приложения. Установите значение Game . | |||
exampleOfWork | Видеоигра | Обязательно. Издание VideoGame . Эта сущность VideoGame (Edition) также содержит информацию о глубинной ссылке. Подробнее см. в таблице спецификаций VideoGame (Edition) . | |||
playMode | Текстовый или игровой режим | Необязательный параметр . Указывает, является ли игра многопользовательской, кооперативной или однопользовательской. Игра может быть отмечена как многопользовательская, кооперативная и однопользовательская одновременно. Принимает следующие значения:
|
Таблица спецификаций VideoGame (Edition)
Свойство | Ожидаемый тип | Описание | |||
---|---|---|---|---|---|
@type | Текст | Обязательно . Всегда выбирайте VideoGame . | |||
@id | URL | Обязательно . Идентификатор контента в формате URI (например, https://example.com/1234abc.@id ) должен соответствовать следующим требованиям:
Поскольку | |||
url | URL | Обязательно . Канонический URL-адрес контента, который Google использует для сопоставления контента в вашей ленте с контентом в базах данных Google. url должен соответствовать следующим требованиям:
Для получения глубокой ссылки на воспроизведение см. свойство | |||
name | Текст | Название игры.
| |||
description | Текст | Настоятельно рекомендуется. Краткий обзор игры. Лимит — 300 символов.
| |||
genre | Текст | Упорядоченный список всех соответствующих жанров. Например: ["Action", "Role playing"] | |||
image | ImageObject | Настоятельно рекомендуется. Изображения, связанные с игрой. Дополнительные сведения об обязательных и необязательных свойствах, включаемых в image , см. в разделе Свойства изображения . | |||
applicationCategory | Текст | Необязательно. Тип программного приложения. Установите значение Game . | |||
playMode | Текст или GamePlayMode | Необязательно . Указывает, является ли эта игра многопользовательской, кооперативной или однопользовательской. Игра может быть помечена как многопользовательская, кооперативная и одиночная одновременно. Принимает следующие значения:
| |||
potentialAction | ИгратьИграДействие | Обязательно, если применимо . Объект разметки Action , предоставляющий подробную информацию о действии. Используйте массив, чтобы указать разные глубокие ссылки в нескольких регионах. Дополнительные сведения см. в примере с несколькими регионами и языками . | |||
gameEdition | Текст | Требуется . Издание этой игры. Например, популярная игра «Shadow of the Tomb Raider» предлагается в четырех изданиях: «Croft Edition», «Standard Edition», «Digital Deluxe Edition» и «Ultimate Edition». | |||
gamePlatform | Текст | Требуется . Платформа или электронная система, используемая для игры в видеоигру. | |||
releasedEvent | ПубликацияСобытие | Настоятельно рекомендуется . PublicationEvent используется для указания исходного (глобального или локального) выпуска контента издателем. | |||
releasedEvent.@type | Текст | Требуется . Обязательно всегда устанавливайте для этого свойства значение PublicationEvent . | |||
releasedEvent.Location | Страна | Требуется . Регионы, связанные с этим событием запуска. Используйте коды ISO 3166 для стран. Чтобы указать любую точку мира, установите значение | |||
releasedEvent.startDate | Дата или время | Рекомендуется . Требуется для ExclusiveEvent . Дата начала публикации объекта. | |||
releasedEvent.endDate | Дата или время | Необязательно . Это дата истечения срока действия прав на контент. | |||
releasedEvent.publishedBy | Организация или лицо | Необязательно . Организация или лицо, опубликовавшее этот объект. | |||
contentRating | Текст | Требуется для игр для взрослых, в противном случае настоятельно рекомендуется . Общий рейтинг контента. Если рейтинг контента указан в виде текстовой строки, принимаются два варианта:
| |||
publisher | Организация или лицо | Необязательно . Организация или лицо, опубликовавшее этот объект. | |||
contributor | Организация или лицо | Необязательно . Вторичный участник этой организации. |
Таблица характеристик изображения
Повторное использование действий Play Game использует схему Media Actions для фиксации требований к изображению. Дополнительную информацию см. в спецификациях схемы изображения .
Вот еще несколько требований, о которых следует помнить.
Соотношение сторон и contentAttributes | Минимальное разрешение (в пикселях) |
---|---|
16:9, культовый постер | 3840x2160 |
2:3, культовый плакат | 1000x1500 |
4:3, культовый плакат | 800x600 |
1:1, культовый плакат | 600x600 |
3:4, культовый плакат | 600x800 |
16:9, знаковый фон [предпочтительно] или сцена. | 3840x2160 |
2:3, знаковый фон [предпочтительно] или сцена. | 1000x1500 |
3:4, знаковый фон [предпочтительно] или сцена. | 600x800 |
Требования к формату
Ниже приведены требования к формату, которых вы должны придерживаться в отношении размера, качества и т. д. изображения:
- Включите плакаты и
sceneStills
в самом высоком разрешении, которые у вас есть для игры. - Изображение должно быть в формате JPG, PNG или WebP.
- URL-адрес изображения должен быть доступным для сканирования и индексирования .
- Размер файла не должен превышать 20 МБ.
- Мы предпочитаем изображения, которые подходят как для
smallFormat
, так иlargeFormat
. Изображение не должно содержать следующее:
- Размытое, пиксельное, повернутое изображение или изображение низкого качества.
- Нелицензионная или стоковая фотография.
- Нагота.
- Незаконный контент.
- Вы можете указать размеры изображения в дополнение к тем, которые указаны в предыдущей таблице.
Примеры
В следующих разделах приведены примеры примеров фидов для различных сценариев.
Пример фида с одним объектом VideoGame
Вот пример сущности VideoGame
, которая представляет игру «Space Wars Made Up Game». Имейте в виду, что этот объект должен быть заключен в конверт фида данных в файле JSON, чтобы его мог видеть Google.
{ "@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" } ] } } ] }
Представление образца изображения с двумя игровыми персонажами

{ "@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"] } ] } }
Работа с несколькими регионами и языками (интернационализация)
Сущность VideoGame
может быть доступна в нескольких регионах и на разных языках.
{ "@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... }