コース(Course
)の構造化データ
![Google 検索でコースリストがどのように表示されるかを示すイラスト。同じウェブサイトの 3 つの異なるコースがリスト形式で表示され、ユーザーは特定のコースを探索して選択できるようになっています](https://developers.google.cn/static/search/docs/images/course-carousel-rich-result.png?authuser=6&hl=ja)
構造化データを使ってコースリストをマークアップすると、Google 検索でコースを探しているユーザーにコースリストを表示できます。コースリストには、コースのタイトル、提供者、簡単な説明を含めることができます。
構造化データを追加する方法
構造化データは、ページに関する情報を提供し、ページ コンテンツを分類するための標準化されたデータ形式です。構造化データを初めて使用する場合は、構造化データの仕組みについてをご覧ください。
構造化データの作成、テスト、リリースの概要は次のとおりです。ウェブページに構造化データを追加するための手順ガイドについては、構造化データの Codelab をご覧ください。
- 必須プロパティを追加します。使用している形式に基づいて、ページ上の構造化データを挿入する場所をご確認ください。
- ガイドラインに従います。
- リッチリザルト テストでコードを検証し、重大なエラーを修正します。ツールで報告される重大ではない問題の修正も検討してください。構造化データの品質向上に役立ちます(ただし、リッチリザルトの対象となるために必ずしも必要というわけではありません)。
- 構造化データが含まれているページを数ページ導入し、URL 検査ツールを使用して、Google でページがどのように表示されるかをテストします。Google がページにアクセスでき、robots.txt ファイル、
noindex
タグ、ログイン要件によってページがブロックされていないことを確認します。ページが正常に表示されたら、Google に URL の再クロールを依頼できます。 - 今後の変更について 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 |
コースの説明。表示できる文字数は、半角 60 文字(全角 30 文字)までです。 |
name |
コースのタイトル。 |
推奨プロパティ | |
---|---|
provider |
コースのソース コンテンツを公開している組織。たとえば、「カリフォルニア大学バークレー校」のように指定します。 |
ItemList
Course
プロパティに加えて、次のプロパティを追加してリストを指定します。これらのプロパティは、概要ページまたはオールインワン ページのいずれかに追加できます。
ItemList
の定義の全文は schema.org/ItemList で確認できます。
必須プロパティ | |
---|---|
itemListElement |
1 つのアイテムページの注釈。 |
ListItem.position |
リスト内でのアイテムページの順序位置。 |
ListItem.url |
アイテムページの正規 URL。すべてのアイテムに固有の URL が必要です。 |
トラブルシューティング
構造化データの実装またはデバッグで問題が発生した場合は、以下のリソースが参考になります。
- コンテンツ管理システム(CMS)を使用している場合や、サイトが他者によって管理されている場合は、それに応じて支援を依頼してください。その際は、問題の詳細を含む Search Console のメッセージを必ず転送してください。
- 構造化データを使用するコンテンツが必ず検索結果に表示されるとは限りません。コンテンツがリッチリザルトに表示されないときのよくある原因については、構造化データに関する一般的なガイドラインをご覧ください。
- 構造化データにエラーがある可能性があります。構造化データエラーの一覧を確認してください。
- 構造化データへの手動による対策をページに対して実施すると、ページ上の構造化データが無視されるようになります(ただし、Google 検索結果にはページは引き続き表示されます)。構造化データの問題を修正するには、手動による対策レポートを使用します。
- ガイドラインを再度確認し、コンテンツがガイドラインを遵守していないことを確認します。スパム コンテンツまたはスパム マークアップの使用が原因で、問題が発生する場合がありますが、これは構文の問題ではない可能性があり、リッチリザルト テストでは特定できません。
- リッチリザルトが見つからない場合またはリッチリザルトの合計数が不足している場合のトラブルシューティングをご覧ください。
- 再クロールとインデックスの再登録に要する時間を考慮してください。ページを公開した後、Google が対象のページを検出してクロールするまでに数日を要する場合があることに留意してください。クロールとインデックス登録に関する一般的な質問については、Google 検索のクロールとインデックス登録に関するよくある質問をご覧ください。
- Google 検索セントラル フォーラムでもご質問をお受けしています。