Uporządkowane dane dotyczące treści płatnych i dostępnych w ramach subskrypcji (CreativeWork
)
Z tego artykułu dowiesz się, jak używać formatu JSON-LD schema.org, aby oznaczać w witrynie treści płatne za pomocą właściwości CreativeWork
. Uporządkowane dane pomagają Google odróżnić treści płatne od maskowania, które jest niezgodne z zasadami dotyczącymi spamu.
Dowiedz się więcej o treściach płatnych i dostępnych w ramach subskrypcji.
Przykład
Oto przykład uporządkowanych danych NewsArticle
z treściami płatnymi.
<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>
Wytyczne
Aby umożliwić wyświetlanie strony w wynikach wyszukiwania, musisz zapewnić jej zgodność z ogólnymi wytycznymi dotyczącymi uporządkowanych danych oraz ze wskazówkami technicznymi. W przypadku treści płatnych obowiązują też te wytyczne:
- Użycie formatu JSON-LD i mikrodanych to akceptowane metody definiowania uporządkowanych danych w przypadku treści płatnych.
- Nie zagnieżdżaj sekcji z treścią.
-
Dla właściwości
cssSelector
używaj tylko selektorów.class
.
Dodawanie znaczników do treści płatnych
Jeśli korzystanie z Twojej witryny jest oparte na subskrypcji lub jeśli dostęp do treści, które mają być indeksowane, wymaga rejestracji użytkownika, wykonaj te czynności. Podany tu przykład dotyczy uporządkowanych danych NewsArticle
. Pamiętaj, żeby wykonać te czynności w przypadku wszystkich wersji Twojej strony (w tym AMP i innych niż AMP).
-
Dodaj nazwę klasy do każdej sekcji z treściami płatnymi na stronie. Przykład:
<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>
-
Dodaj uporządkowane dane
NewsArticle
. -
Dodaj zaznaczone uporządkowane dane JSON-LD do uporządkowanych danych obiektu
NewsArticle
.{ "@context": "https://schema.org", "@type": "NewsArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://example.org/article" }, (...) "isAccessibleForFree": false, "hasPart": { "@type": "WebPageElement", "isAccessibleForFree": false, "cssSelector": ".paywall" } }
- Zweryfikuj kod za pomocą testu wyników z elementami rozszerzonymi i napraw błędy krytyczne.
Wiele sekcji z treściami płatnymi
Jeśli na stronie masz wiele sekcji z treściami płatnymi, dodaj nazwy klas w postaci tablicy.
Oto przykład sekcji z treściami płatnymi na stronie:
<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>
Oto przykład uporządkowanych danych obiektu NewsArticle
z wieloma sekcjami zawierającymi treści płatne.
{ "@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" } ] }
Typy obsługiwane
Te znaczniki są obsługiwane w przypadku typu CreativeWork
lub jednego z bardziej określonych typów CreativeWork
:
Można używać wielu typów schema.org, np. tych:
"@type": ["Article", "LearningResource"]
Aby robot Google rozpoznał, że Twój artykuł zawiera treści płatne, musisz w nim określić wymagane właściwości. Możesz dodać właściwości zalecane, aby dokładniej określić, które sekcje strony są dostępne za paywallem (albo wymagają subskrypcji bądź rejestracji).
Właściwości wymagane | |
---|---|
isAccessibleForFree
|
Określa, czy artykuł jest ogólnodostępny czy ukryty za paywallem (albo wymaga subskrypcji lub rejestracji). Ustaw właściwość |
Właściwości zalecane | |
---|---|
hasPart.cssSelector
|
Selektor CSS, który odwołuje się do nazwy klasy ustawionej w kodzie HTML, aby określić sekcję płatną. |
hasPart.@type
|
Ustaw wartość |
hasPart.isAccessibleForFree
|
Określa, czy ta sekcja artykułu jest dostępna za paywallem (albo wymaga subskrypcji lub rejestracji). Ustaw właściwość |
Uwaga dotycząca AMP
Oto lista uwag, o których musisz pamiętać, jeśli używasz stron AMP:
-
Jeśli masz stronę AMP z treściami płatnymi, użyj w odpowiednich przypadkach komponentu
amp-subscriptions
. - Upewnij się, że punkt końcowy autoryzacji zapewnia dostęp do treści odpowiednim robotom Google i innych firm – zależy to od wydawcy.
- Upewnij się, że zasady dostępu dla botów są takie same w przypadku stron AMP i stron w innych formatach. W przeciwnym razie w Search Console mogą zostać zgłoszone błędy niezgodności treści.
Uwagi na temat generatywnej AI w wyszukiwarce
Streszczenia są podglądem informacji związanych z danym tematem lub zapytaniem, wygenerowanym przez AI na podstawie różnych źródeł, w tym stron internetowych. W związku z tym podlegają ustawieniom podglądu treści w wyszukiwarce.
Narzędzia oparte na AI podczas przeglądania, funkcja oddzielna od streszczeń wygenerowanych przez AI, nie będzie zawierać najważniejszych punktów z płatnych artykułów, jeśli uporządkowane dane paywalla znajdują się na stronie.
Jak sprawdzić, czy Google może indeksować i skanować Twoje strony
Jeśli chcesz, żeby roboty Google indeksowały i skanowały całą stronę (w tym sekcje płatne), sprawdź, czy Googlebot (a w odpowiednich przypadkach także Googlebot-News
) ma dostęp do strony.
Użyj narzędzia do sprawdzania adresów URL, by zobaczyć, jak Google indeksuje i renderuje adres URL w Twojej witrynie.
Określanie, jakie informacje mają być widoczne w wynikach wyszukiwania
Jeśli chcesz wykluczyć niektóre fragmenty treści z wyników wyszukiwania, użyj atrybutu HTML data-nosnippet
.
Możesz też ograniczyć liczbę znaków we fragmencie w wyniku wyszukiwania, używając tagu max-snippet
robots meta
.
Rozwiązywanie problemów
Jeśli masz problem z zastosowaniem lub debugowaniem uporządkowanych danych, skorzystaj z tych rozwiązań:
- Jeśli korzystasz z systemu zarządzania treścią (CMS) lub ktoś inny zajmuje się Twoją witryną, poproś odpowiednią osobę o pomoc. Pamiętaj, aby przekazać tej osobie wszystkie wiadomości z Search Console, które zawierają szczegółowe informacje o problemie.
- Google nie gwarantuje, że funkcje wykorzystujące uporządkowane dane pojawią się w wynikach wyszukiwania. Listę typowych powodów, dla których Google może nie wyświetlać Twoich treści w wyniku z elementami rozszerzonymi, znajdziesz w Ogólnych wytycznych dotyczących uporządkowanych danych.
- Możliwe, że w uporządkowanych danych wystąpił błąd. Sprawdź listę błędów uporządkowanych danych i raport dotyczący uporządkowanych danych, których nie można przeanalizować.
- Jeśli wobec Twojej strony zostały podjęte ręczne działania dotyczące uporządkowanych danych, dane te zostaną zignorowane (mimo że strona nadal może się pojawiać w wynikach wyszukiwania Google). Aby rozwiązać problemy z uporządkowanymi danymi, użyj raportu Ręczne działania.
- Przejrzyj jeszcze raz wytyczne, aby sprawdzić, czy Twoje treści ich nie naruszają. Przyczyną problemu mogą być treści spamerskie lub użycie spamerskich znaczników. Jeśli jednak problem nie jest związany ze składnią, test wyników z elementami rozszerzonymi go nie wykryje.
- Rozwiązywanie problemów z brakującymi wynikami z elementami rozszerzonymi lub ze spadkiem całkowitej liczby wyników z elementami rozszerzonymi
- Poczekaj na ponowne zindeksowanie strony. Pamiętaj, że gdy opublikujesz stronę, Google może potrzebować kilku dni na jej znalezienie i zindeksowanie. Odpowiedzi na ogólne pytania dotyczące skanowania i indeksowania znajdziesz w artykule Najczęstsze pytania o indeksowanie i skanowanie w wyszukiwarce Google.
- Zadaj pytanie na forum Centrum wyszukiwarki Google.