コース(Course)の構造化データ

Google 検索でコースリストがどのように表示されるかを示すイラスト。同じウェブサイトの 3 つの異なるコースがリスト形式で表示され、ユーザーは特定のコースを探索して選択できるようになっています

構造化データを使ってコースリストをマークアップすると、Google 検索でコースを探しているユーザーにコースリストを表示できます。コースリストには、コースのタイトル、提供者、簡単な説明を含めることができます。

構造化データを追加する方法

構造化データは、ページに関する情報を提供し、ページ コンテンツを分類するための標準化されたデータ形式です。構造化データを初めて使用する場合は、構造化データの仕組みについてをご覧ください。

構造化データの作成、テスト、リリースの概要は次のとおりです。ウェブページに構造化データを追加するための手順ガイドについては、構造化データの Codelab をご覧ください。

  1. 必須プロパティを追加します。使用している形式に基づいて、ページ上の構造化データを挿入する場所をご確認ください。
  2. ガイドラインに従います。
  3. リッチリザルト テストでコードを検証し、重大なエラーを修正します。ツールで報告される重大ではない問題の修正も検討してください。構造化データの品質向上に役立ちます(ただし、リッチリザルトの対象となるために必ずしも必要というわけではありません)。
  4. 構造化データが含まれているページを数ページ導入し、URL 検査ツールを使用して、Google でページがどのように表示されるかをテストします。Google がページにアクセスでき、robots.txt ファイル、noindex タグ、ログイン要件によってページがブロックされていないことを確認します。ページが正常に表示されたら、Google に URL の再クロールを依頼できます。
  5. 今後の変更について Google に継続して情報を提供するために、サイトマップを送信することをおすすめします。これは、Search Console Sitemap API で自動化できます。

単一コースの詳細ページ

以下は、単一コースの詳細ページの例です。このページは、ItemList マークアップを含む概要ページと対になっている必要があります。


<html>
  <head>
    <title>Introduction to Computer Science and Programming</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "Course",
      "name": "Introduction to Computer Science and Programming",
      "description": "Introductory CS course laying out the basics.",
      "provider": {
        "@type": "Organization",
        "name": "University of Technology - Eureka",
        "sameAs": "https://www.example.com"
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

単一のオールインワン ページ

単一のオールインワン ページの例を以下に示します。このページの設定には、リスト マークアップと、同じページに掲載されている各コースの詳細の両方が含まれています。


<html>
  <head>
    <title>Computer Science Courses</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "ItemList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "item": {
            "@type": "Course",
            "url":"https://www.example.com/courses#intro-to-cs",
            "name": "Introduction to Computer Science and Programming",
            "description": "This is an introductory CS course laying out the basics.",
            "provider": {
              "@type": "Organization",
              "name": "University of Technology - Example",
              "sameAs": "https://www.example.com"
           }
          }
        },
        {
          "@type": "ListItem",
          "position": 2,
          "item": {
            "@type": "Course",
            "url":"https://www.example.com/courses#intermediate-cs",
            "name": "Intermediate Computer Science and Programming",
            "description": "This is a CS course that builds on the basics learned in the Introduction course.",
            "provider": {
              "@type": "Organization",
              "name": "University of Technology - Example",
              "sameAs": "https://www.example.com"
           }
         }
        },
        {
          "@type": "ListItem",
          "position": 3,
          "item": {
            "@type": "Course",
            "url":"https://www.example.com/courses#advanced-cs",
            "name": "Advanced Computer Science and Programming",
            "description": "This CS course covers advanced programming principles.",
            "provider": {
              "@type": "Organization",
              "name": "University of Technology - Eureka",
              "sameAs": "https://www.example.com"
           }
          }
        }
      ]
    }
    </script>
  </head>
  <body>
  </body>
</html>

ガイドライン

コースリスト形式で表示されるようにするには、以下のガイドラインに準拠する必要があります。

コンテンツ ガイドライン

  • ここで言う「コース」とは、特定の科目 / トピックに関する講義、レッスン、またはモジュール授業で構成される一連のカリキュラムまたは 1 つの完結したカリキュラムです。Course マークアップは、このコースの定義に適合する教育コンテンツにのみ使用してください。
  • コースは、特定の科目またはトピックの知識や技能に関して明確な教育的成果が得られるものでなければならず、複数の生徒に対して 1 人以上の講師が指導を行う必要があります。
  • 「天文学デー」のような一般公開のイベントや、1~2 分間の「サンドイッチの作り方」動画はコースではありません。

技術に関するガイドライン

少なくとも 3 つのコースをマークアップしている必要があります。コースは個別の詳細ページ、または 1 つのオールインワン ページに掲載できます。

カルーセルのマークアップ概要ページまたはオールインワン ページに追加する必要があります。

各コースには有効な name プロパティと provider プロパティが必要です。以下に無効な名前の例を示します。

  • 宣伝文句になっている: 「世界で最も優れた学校」
  • 受講料の情報が含まれている: 「たった 3,000 円でウクレレが習える」
  • コース内容以外の情報が含まれている: 「この講座を受ければ手っ取り早くお金が稼げる」
  • 割引や支払い特典の情報が含まれている: 「この分野のパイオニアが秘訣を伝授、今なら 25% オフ」

構造化データタイプの定義

コンテンツがリッチリザルトとして表示されるようにするには、必須プロパティを含める必要があります。また、推奨プロパティを使用することでコンテンツに関する詳細情報を追加でき、ユーザー エクスペリエンスの向上につながります。

Course

次のプロパティを使用して少なくとも 3 つのコースをマークアップしてください。コースは個別の詳細ページ、または 1 つのオールインワン ページに掲載できます。

Course の定義の全文は schema.org/Course で確認できます。Google がサポートするプロパティは、次のとおりです。

必須プロパティ
description

Text

コースの説明。表示できる文字数は、半角 60 文字(全角 30 文字)までです。

name

Text

コースのタイトル。

推奨プロパティ
provider

Organization

コースのソース コンテンツを公開している組織。たとえば、「カリフォルニア大学バークレー校」のように指定します。

ItemList

Course プロパティに加えて、次のプロパティを追加してリストを指定します。これらのプロパティは、概要ページまたはオールインワン ページのいずれかに追加できます。

ItemList の定義の全文は schema.org/ItemList で確認できます。

必須プロパティ
itemListElement

ListItem

1 つのアイテムページの注釈。

ListItem.position

Integer

リスト内でのアイテムページの順序位置。

ListItem.url

URL

アイテムページの正規 URL。すべてのアイテムに固有の URL が必要です。

トラブルシューティング

構造化データの実装またはデバッグで問題が発生した場合は、以下のリソースが参考になります。