Структурированные данные (schema.org) для прайс-листов / сервисных списков - PullRequest
1 голос
/ 08 марта 2019

Я создаю сайт для местного салона красоты. Они предлагают такие услуги, как массаж и различные косметические процедуры. Это все видно на 1 обзорной странице (прайс-лист)

Я выяснил, https://schema.org/Product можно использовать для услуг:

Любой предлагаемый товар или услуга. Например: пара обуви; билет на концерт; аренда автомобиля; стрижка

Первый вопрос, могу ли я игнорировать такие поля, как доступность и состояние?

Во-вторых, я должен перечислить этот продукт как ItemOffered внутри Offer? Или это не правильный путь?

Пример:

{
"@context": "http://schema.org",
"@type": "WebPageElement",
"offers": {
    "@type": "Offer",
    "itemOffered": [
        {
            "@type": "Product",
            "@id": "/beauty-treatment-a",
            "description": "Short description with details",
            "name": "Beauty Treatment A",
            "offers": {
                "@type": "Offer",
                "price": "18.28",
                "priceCurrency": "EUR",
                "description": "Same description",
                "name": "Same name",
                "image": {
                    "@context": "http://schema.org",
                    "@type": "ImageObject",
                    "contentUrl": "image-a.jpg",
                    "description": "Same name",
                    "width": 640,
                    "height": 640
                }
            }
        },
        {
            "@type": "Product",
            "@id": "/beauty-treatment-b",
            "description": "Short description with details",
            "name": "Beauty Treatment B",
            "offers": {
                "@type": "Offer",
                "price": "18.28",
                "priceCurrency": "EUR",
                "description": "Same description",
                "name": "Same name",
                "image": {
                    "@context": "http://schema.org",
                    "@type": "ImageObject",
                    "contentUrl": "image-b.jpg",
                    "description": "Same name",
                    "width": 640,
                    "height": 640
                }
            }
        ]
    }
}

1 Ответ

0 голосов
/ 11 марта 2019

Первый вопрос, могу ли я игнорировать такие поля, как наличие и состояние?

Schema.org никогда не требует свойства.Потребителю, как Google, могут потребоваться свойства для одной из его функций.

Для Функция продукта Google ,

  • availability рекомендуется для получения расширенного результата в Поиске Google и требуется для «Связанных элементов» в изображениях Google.и
  • itemCondition не рекомендуется и не требуется.

Однако их функция предназначена только для страниц об одном продукте.Таким образом, ваша страница не имеет права на богатый продукт Google.

Во-вторых, следует ли мне указывать эти продукты как ItemOffered внутри предложения?Или это не правильный путь?

Вы можете иметь Product в качестве элемента верхнего уровня (с offers Offer) или Offer какэлемент верхнего уровня (с itemOffered Product).

О вашем примере:

  • Нет необходимости использовать WebPageElement;Как правило, это не релевантная информация о том, что определенный элемент HTML на странице содержит предложение, важно только, чтобы было предложением.

  • У вас есть одно предложение, состоящее издвух продуктов и двух предложений, состоящих из одного продукта каждый (так же, как в первом предложении).Вы, вероятно, не хотите иметь первое предложение (если только на самом деле не существует предложения, объединяющего два продукта).

Я бы порекомендовал следующее:

  • Используйте OfferCatalog для списка предложений.
  • Каждый элемент списка представляет собой Offer.
  • Каждый Offer указывает на его Product /Service с itemOffered.
...