サブスクリプションとペイウォール コンテンツ

ここでは、JSON-LD で schema.org の CreativeWork のプロパティを使用して、サイトのペイウォール コンテンツを指定する方法について説明します。この構造化データにより、それがペイウォール コンテンツか、Google ガイドラインに違反するクローキングかを Google のクローラが容易に区別できるようになります。詳しくは、定期購入とペイウォール コンテンツについての記事をご覧ください。

ペイウォール コンテンツの NewsArticle 構造化データの例を、次に示します。

ガイドライン

ページを検索結果の表示対象とするためには、構造化データの一般ガイドライン技術に関するガイドラインに準拠する必要があります。ペイウォール コンテンツの場合は、さらに以下のガイドラインが適用されます。

  • ペイウォール コンテンツの構造化データを指定する方法として、JSON-LD 形式と microdata 形式が認められています。
  • コンテンツ セクションをネストしないでください。
  • cssSelector プロパティでは .class セレクタのみを使用してください。

ペイウォール コンテンツにマークアップを追加する

ウェブサイトのコンテンツをサブスクリプション制で提供している場合や、コンテンツへのアクセスに登録が必要となっている場合、そうしたコンテンツをインデックスに登録するには以下の手順を行います。この例は、NewsArticle 構造化データに適用できます。この手順は、AMP かどうかに関係なくすべてのバージョンのページに適用してください。

  1. クラス名を追加し、ページの各ペイウォール セクションを囲みます。次に例を示します。
    <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>
    
  2. NewsArticle 構造化データを追加します。
  3. 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, and 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"
    }
  ]
}

AMP に関する考慮事項

AMP ページを使用する場合の考慮事項は以下のとおりです。

  • AMP ページにペイウォール コンテンツが含まれている場合は、必要に応じて amp-subscriptions を使用します。
  • 承認エンドポイントから Google や他社の適切な bot にコンテンツへのアクセス権が付与されていることを確認します。これは、サイト運営者に応じて異なります。
  • bot のアクセス ポリシーが AMP ページと非 AMP ページで同じであることを確認します。同じでない場合、Search Console にコンテンツの不一致エラーが表示されることがあります。

Google がページをクロールしてインデックスに登録できるようにする

Google がページのコンテンツをクロールしてインデックスに登録できるようにする方法はいくつかあります。

  • Google がクロールしてインデックスに登録できるようにしたいコンテンツがペイウォールの外側にあり、すべてのユーザーがアクセスできるコンテンツのみである場合は、この手順をスキップします。
  • ペイウォール セクションを含むページ全体を Google がクロールしてインデックスに登録できるようにする場合は、Googlebot と、該当する場合は Googlebot-News がページにアクセスできるようにします。
  • キャッシュされたページのリンクが Google に表示されないようにするには、noarchive robots メタタグを使用します。