З цієї статті ви дізнаєтеся, як за допомогою властивостей для типу CreativeWork у форматі JSON-LD від schema.org позначити на своєму сайті платний контент. Структуровані дані допомагають Google відрізнити платний контент від матеріалів, які приховані за допомогою маскування і цим порушують наші правила щодо вебспаму. Детальніше про підписки та платний контент…
Приклад
Нижче наведено приклад коду, в якому платний контент позначений за допомогою структурованих даних типу NewsArticle.
<html>
<head>
<title>Article headline</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "NewsArticle",
"headline": "Article headline",
"image": "https://example.org/thumbnail1.jpg",
"datePublished": "2025-02-05T08:00:00+08:00",
"dateModified": "2025-02-05T09:20:00+08:00",
"author": {
"@type": "Person",
"name": "John Doe",
"url": "https://example.com/profile/johndoe123"
},
"description": "A most wonderful article",
"isAccessibleForFree": false,
"hasPart":
{
"@type": "WebPageElement",
"isAccessibleForFree": false,
"cssSelector" : ".paywall"
}
}
</script>
</head>
<body>
<div class="non-paywall">
Non-Paywalled Content
</div>
<div class="paywall">
Paywalled Content
</div>
</body>
</html>Правила
Щоб ваша сторінка з’являлася в результатах пошуку, ви повинні дотримуватися загальних правил щодо структурованих даних і технічних вимог. Крім того, розмітка платного контенту повинна відповідати наведеним нижче правилам.
- Для структурування платного контенту використовуйте мікродані або формат JSON-LD.
- Не вкладайте розділи з контентом один в одного.
- Для властивості
cssSelectorвказуйте тільки селектори.class. - Щоб контент не міг з’являтися в браузері під час показу, налаштуйте один з варіантів платного доступу, при якому це виключено. Якщо ви використовуєте клієнтське рішення на основі JavaScript, вивчіть керівництво про те, як розмічати платний контент за допомогою JavaScript.
Як додати розмітку для платного контенту
Якщо ви хочете, щоб роботи Google індексували ваш контент, для доступу до якого потрібна підписка або реєстрація, виконайте дії, описані нижче. Як приклад наведено розмітку контенту зі структурованими даними типу NewsArticle. Повторіть перераховані дії для всіх варіантів сторінки, включаючи її AMP-версію.
- Призначте назву класу кожному розділу з платним контентом на вашій сторінці. Приклад:
<body> <p>This content is outside a paywall and is visible to all.</p> <div class="paywall">This content is inside a paywall, and requires a subscription or registration.</div> </body>
- Додайте структуровані дані типу
NewsArticle. - Включіть структуровані дані JSON-LD, які виділені в нашому прикладі, в структуровані дані типу
NewsArticle.{ "@context": "https://schema.org", "@type": "NewsArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://example.org/article" }, (...) "isAccessibleForFree": false, "hasPart": { "@type": "WebPageElement", "isAccessibleForFree": false, "cssSelector": ".paywall" } }
- Перевірте свій код за допомогою інструменту перевірки розширених результатів. Якщо будуть виявлені критичні помилки, усуньте їх.
Що робити, якщо платних розділів кілька
Якщо на сторінці є кілька розділів з платним контентом, об’єднайте їх імена класів в один масив.
Код сторінки з двома платними розділами може виглядати так:
<body> <div class="section1">This content is inside a paywall, and requires a subscription or registration.</div> <p>This content is outside a paywall and is visible to all.</p> <div class="section2">This is another section that's inside a paywall, or requires a subscription or registration.</div> </body>
Ось приклад того, як впровадити структуровані дані типу NewsArticle для цих розділів:
{ "@context": "https://schema.org", "@type": "NewsArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://example.org/article" }, (...) "isAccessibleForFree": false, "hasPart": [ { "@type": "WebPageElement", "isAccessibleForFree": false, "cssSelector": ".section1" }, { "@type": "WebPageElement", "isAccessibleForFree": false, "cssSelector": ".section2" } ] }
Підтримувані типи
Таку розмітку можна використовувати з типом CreativeWork або одним із наступних підтипів CreativeWork:
Можна вказати кілька типів schema.org, наприклад такі:
"@type": ["Article", "LearningResource"]
Щоб вказати роботам Google на наявність у вашій статті платного контенту, необхідно встановити всі обов’язкові властивості. У той же час ви також можете додати рекомендовані властивості, які дозволяють більш точно позначити розділи сторінки, доступ до яких вимагає оплати, підписки або реєстрації.
| Обов’язкові властивості | |
|---|---|
is | Вказує на те, чи є стаття загальнодоступною або для доступу до неї потрібна оплата, підписка чи реєстрація. Якщо розділ платний, задайте для властивості |
| Рекомендовані властивості | |
|---|---|
has | Селектор CSS, який посилається на ім’я класу, зазначене в HTML, щоб позначити платний розділ. |
has | Задайте для властивості |
has | Вказує на те, чи є розділ платним або доступ до нього вимагає підписки чи реєстрації. Якщо розділ платний, задайте для властивості |
Про що слід пам’ятати, якщо у вас є AMP-сторінки
Дотримуйтесь цих рекомендацій:
- Якщо у вас є AMP-сторінки з платним контентом, використовуйте компонент
amp-subscriptions, якщо це необхідно. - Переконайтеся, що ваш інструмент авторизації надає роботам Google та іншим пошуковим системам доступ до контенту. Тільки сам видавець може його коректно налаштувати.
- Перевірте, чи однакові правила доступу до звичайних і AMP-сторінок ви налаштували для робота. В іншому випадку в Search Console будуть спостерігатися помилки невідповідності контенту.
Особливості генеративної моделі Google Пошуку
В оглядах від ШІ і в режимі ШІ представлена загальна інформація про певну тему або запит, підібрана на основі матеріалів з різних джерел, включаючи сайти. Тому такими оглядами можна керувати за допомогою налаштувань попереднього перегляду.
Переконайтеся, що Google може сканувати та індексувати ваші сторінки
Якщо вам потрібно, щоб ми сканували та індексували ваш контент, у тому числі в платних розділах, забезпечте доступ до них роботу Googlebot (і роботу Googlebot-News за необхідності).
Використовуйте інструмент перевірки URL, щоб отримати дані про те, як Google сканує та обробляє ваші вебсторінки.
Керуйте показом свого контенту в результатах пошуку
Щоб заборонити показ у Google контенту з певних розділів, використовуйте HTML-атрибут data-nosnippet. Ви також можете задати обмеження на довжину фрагмента в результатах пошуку за допомогою тегу meta з атрибутом max-snippet robots.
Усунення несправностей
Якщо у вас виникли труднощі з додаванням або налагодженням структурованих даних, вам допоможуть ресурси та інформація, доступні за наведеними нижче посиланнями.
- Якщо ви використовуєте систему управління контентом (CMS) або доручили налаштування сайту іншій людині, зверніться за допомогою до неї або розробника CMS. Не забудьте переслати йому повідомлення про проблему, отримані вами в Search Console.
- Google не гарантує відображення вашого контенту в результатах пошуку, які формуються на основі структурованих даних. Можливі причини, з яких ваші матеріали можуть не відображатися у вигляді розширених результатів, перераховані в загальних рекомендаціях щодо використання структурованих даних.
- Ознайомтеся зі списком типових помилок у структурованих даних та звітом про структуровані дані, які неможливо обробити, і перевірте, чи правильно ви додали розмітку.
- Якщо ми вжили заходів щодо сторінки вручну, неприпустимі структуровані дані на ній будуть проігноровані доти, доки ви не виправите код. При цьому сама сторінка може з’являтися в результатах пошуку й далі. Щоб усунути проблеми зі структурованими даними, скористайтеся звітом про заходи, вжиті вручну.
- Ще раз вивчіть рекомендації, щоб з’ясувати, чи відповідає їм ваш контент. Проблема може бути пов’язана зі спамом у контенті або розмітці, а не з помилками в синтаксисі. Тоді її не вдасться виявити за допомогою інструменту перевірки розширених результатів.
- Дізнайтеся, що може спричинити відсутність розширених результатів або зменшення їх загальної кількості.
- Робот Googlebot сканує та індексує сторінки не одразу після оновлення контенту. З моменту публікації сторінки може пройти кілька днів, поки Google не виявить і просканує її. Ми зібрали на окремій сторінці відповіді на поширені запитання про сканування та індексацію.
- При необхідності ставте запитання на форумі Центру Пошуку Google