Q&A(QAPage
)の構造化データ
Q&A ページとは、1 つの質問の後にその質問に対する回答が続く、質問と回答の形式のデータを含むウェブページです。質問とその回答から構成されるコンテンツでは、schema.org の QAPage
、Question
、Answer
の各タイプでデータをマークアップできます。
適切にマークアップされたページは、検索結果ページにリッチリザルトを表示できるようになります。リッチリザルトを表示できるということは、そのページにとって、検索結果ページから適切なユーザーにリーチできることを意味します。"How do I remove a cable that is stuck in a USB port?"(「USB ポートから外れなくなったケーブルを取り外す方法」)を検索したとき、ページでこの質問に対する回答がマークアップされている場合に表示される検索結果の例を次に示します。
![検索したときの質問 / 回答カードの検索結果の例](https://developers-dot-devsite-v2-prod.appspot.com/static/search/docs/images/qa-example-screenshot.png?authuser=6&hl=ja)
Q&A ページをマークアップすることで、コンテンツをリッチリザルトで表示できるだけでなく、このページに対して Google が生成するスニペットの質が向上するという利点もあります。リッチリザルトが表示されない場合、回答のコンテンツが基本的な検索結果の形式で表示されることがあります。
構造化データを追加する方法
構造化データは、ページに関する情報を提供し、ページ コンテンツを分類するための標準化されたデータ形式です。構造化データを初めて使用する場合は、構造化データの仕組みについてをご覧ください。
構造化データの作成、テスト、リリースの概要は次のとおりです。ウェブページに構造化データを追加するための手順ガイドについては、構造化データの Codelab をご覧ください。
- 必須プロパティを追加します。使用している形式に基づいて、ページ上の構造化データを挿入する場所をご確認ください。
- ガイドラインに従います。
- リッチリザルト テストでコードを検証し、重大なエラーを修正します。ツールで報告される重大ではない問題の修正も検討してください。構造化データの品質向上に役立ちます(ただし、リッチリザルトの対象となるために必ずしも必要というわけではありません)。
- 構造化データが含まれているページを数ページ導入し、URL 検査ツールを使用して、Google でページがどのように表示されるかをテストします。Google がページにアクセスでき、robots.txt ファイル、
noindex
タグ、ログイン要件によってページがブロックされていないことを確認します。ページが正常に表示されたら、Google に URL の再クロールを依頼できます。 - 今後の変更について Google に継続して情報を提供するために、サイトマップを送信することをおすすめします。これは、Search Console Sitemap API で自動化できます。
例
次のマークアップの例には、JSON-LD 形式の QAPage
、Question
、Answer
の各タイプの定義が含まれています。
<html> <head> <title>How many ounces are there in a pound?</title> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "QAPage", "mainEntity": { "@type": "Question", "name": "How many ounces are there in a pound?", "text": "I have taken up a new interest in baking and keep running across directions in ounces and pounds. I have to translate between them and was wondering how many ounces are in a pound?", "answerCount": 3, "upvoteCount": 26, "datePublished": "2024-02-14T15:34-05:00", "author": { "@type": "Person", "name": "Mary Stone", "url": "https://example.com/profiles/mary-stone" }, "acceptedAnswer": { "@type": "Answer", "text": "1 pound (lb) is equal to 16 ounces (oz).", "image": "https://example.com/images/conversion-chart.jpg", "upvoteCount": 1337, "url": "https://example.com/question1#acceptedAnswer", "datePublished": "2024-02-14T16:34-05:00", "author": { "@type": "Person", "name": "Julius Fernandez", "url": "https://example.com/profiles/julius-fernandez" } }, "suggestedAnswer": [ { "@type": "Answer", "text": "Are you looking for ounces or fluid ounces? If you are looking for fluid ounces there are 15.34 fluid ounces in a pound of water.", "upvoteCount": 42, "url": "https://example.com/question1#suggestedAnswer1", "datePublished": "2024-02-14T15:39-05:00", "author": { "@type": "Person", "name": "Kara Weber", "url": "https://example.com/profiles/kara-weber" }, "comment": { "@type": "Comment", "text": "I'm looking for ounces, not fluid ounces.", "datePublished": "2024-02-14T15:40-05:00", "author": { "@type": "Person", "name": "Mary Stone", "url": "https://example.com/profiles/mary-stone" } } }, { "@type": "Answer", "text": " I can't remember exactly, but I think 18 ounces in a lb. You might want to double check that.", "upvoteCount": 0, "url": "https://example.com/question1#suggestedAnswer2", "datePublished": "2024-02-14T16:02-05:00", "author": { "@type": "Person", "name": "Joe Cobb", "url": "https://example.com/profiles/joe-cobb" } } ] } } </script> </head> <body> </body> </html>
<html> <body itemscope itemtype="https://schema.org/QAPage"> <div itemprop="mainEntity" itemscope itemtype="https://schema.org/Question"> <h2 itemprop="name">How many ounces are there in a pound?</h2> <div itemprop="upvoteCount">52</div> <div itemprop="text">I have taken up a new interest in baking and keep running across directions in ounces and pounds. I have to translate between them and was wondering how many ounces are in a pound?</div> <div> <div><span itemprop="answerCount">3</span> answers</div> <div><span itemprop="upvoteCount">26</span> votes</div> <div itemprop="acceptedAnswer" itemscope itemtype="https://schema.org/Answer"> <div itemprop="upvoteCount">1337</div> <div itemprop="text"> 1 pound (lb) is equal to 16 ounces (oz). </div> <a itemprop="url" href="https://example.com/question1#acceptedAnswer">Answer Link</a> </div> <div itemprop="suggestedAnswer" itemscope itemtype="https://schema.org/Answer"> <div itemprop="upvoteCount">42</div> <div itemprop="text"> Are you looking for ounces or fluid ounces? If you are looking for fluid ounces there are 15.34 fluid ounces in a pound of water. </div> <a itemprop="url" href="https://example.com/question1#suggestedAnswer1">Answer Link</a> </div> <div itemprop="suggestedAnswer" itemscope itemtype="https://schema.org/Answer"> <div itemprop="upvoteCount">0</div> <div itemprop="text"> I can't remember exactly, but I think 18 ounces in a lb. You might want to double check that. </div> <a itemprop="url" href="https://example.com/question1#suggestedAnswer2">Answer Link</a> </div> </div> </div> </body> </html>
ガイドライン
Q&A ページがリッチリザルトで表示されるようにするには、以下のガイドラインを遵守する必要があります。
コンテンツ ガイドライン
- 1 つの質問の後にその質問に対する回答が続く、質問と回答の形式の情報が含まれているページの場合は、
QAPage
マークアップのみを使用します。 - ユーザーは質問に対する回答を送信できなければなりません。質問に対する回答が 1 つしかなく、ユーザーが他の回答を追加できないコンテンツの場合は、
QAPage
マークアップの代わりにFAQPage
を使用します。次に例を示します。使用できる場合の例:
- 1 つの質問に対してユーザーが複数の回答を送信できるフォーラム ページ
- 1 つの質問に対して複数のユーザーが回答を送信できる製品サポートページ
使用できない場合の例:
- サイト運営者が作成し、ユーザーが他の回答を送信できない FAQ ページ
- 1 つのページに複数のユーザーが質問と回答を送信できる製品サポートページ
- 質問と回答で構成される利用ガイド
- 質問と回答で構成されるブログ記事
- 質問と回答で構成されるエッセイ
- すべてのコンテンツが対象でない限り、サイトやフォーラムのすべてのページに
QAPage
マークアップを適用しないでください。たとえば、あるフォーラムに多くの質問が投稿されている場合、そのページはマークアップの対象になりますが、そのフォーラムに質問以外のページもある場合、そのページはマークアップの対象になりません。 - FAQ ページなど、1 つのページに複数の質問が含まれるページに
QAPage
マークアップを使用しないでください。QAPage
マークアップは、1 つの質問とその回答に焦点を当てたページに使用します。 QAPage
マークアップを宣伝目的で使用しないでください。- 各
Question
に質問のテキスト全体が含まれるようにし、各Answer
に回答のテキスト全体が含まれるようにします。 Answer
マークアップは、質問に対するコメントや他の回答に対するコメントに使用するのではなく、質問に対する回答に使用します。回答でないコメントをAnswer
としてマークアップしないでください。- 質問と回答のコンテンツに、猥褻または冒とく的なコンテンツ、露骨な性表現を含むコンテンツ、暴力的な描写を含むコンテンツ、危険または違法な行為を助長するコンテンツ、差別や中傷にあたるコンテンツが含まれる場合、リッチリザルトとして表示されない可能性があります。
- 教育関連の Q&A ページは、ユーザーが提出した課題の正解を掲載することを主な目的としており、Q&A カルーセル エクスペリエンスの対象となる場合があります。これらのページには、ユーザーに代わって課題に精通している社内の専門家が提供または選択した回答が 1 つだけ表示される場合があります。
例: ユーザーが質問を 1 つ投稿し、ベストアンサーが専門家によって選択された教育ページ。
構造化データタイプの定義
このセクションでは、QAPage
に関連する構造化データタイプについて説明します。
コンテンツがリッチリザルトとして表示されるようにするには、必須プロパティを含める必要があります。また、推奨プロパティを使用することで構造化データにより多くの情報を追加でき、ユーザー エクスペリエンスを向上させることができます。
Google のリッチリザルト テストを使用すると、構造化データの検証とプレビューが行えます。
QAPage
QAPage
タイプは、ページの焦点が特定の質問とその回答に当てられていることを示します。Google では、QAPage
でマークアップされたページでのみ、Question
構造化データを使用します。QAPage
タイプの定義は各ページで 1 回だけ行う必要があります。
QAPage
の完全な定義は https://schema.org/QAPage で確認できます。
次の表で、Google 検索で使用される QAPage
タイプのプロパティについて説明します。
必須プロパティ | |
---|---|
|
Question
|
Question
Question
タイプでは、Q&A ページで回答する質問を定義し、その質問に対する回答(ある場合)を含めます。Q&A ページには 1 つの Question
タイプが必要で、schema.org/QAPage
の mainEntity
プロパティにネストします。Question
タイプの定義は各ページで 1 回だけ行う必要があります。
Question
の完全な定義は https://schema.org/Question で確認できます。Google がサポートするプロパティは、次のとおりです。
必須プロパティ | |||||
---|---|---|---|---|---|
|
Integer
質問に対する回答の総数。たとえば、ページ分けにより 15 個の回答のうち最初の 10 個のみがマークアップされている場合でも、この値は 15 になります。質問に回答がない場合は 0 になります。 |
||||
acceptedAnswer または suggestedAnswer |
Answer
リッチリザルトの対象となるには、質問に対する回答が少なくとも 1 つ(
|
||||
|
Text
短い形式の質問の全文。例: "How many teaspoons in a cup?"(「ティースプーン何杯分で 1 カップ分になりますか」) |
推奨プロパティ | |
---|---|
|
Text
長い形式の質問の全文。例: "I’m cooking, and I need to know how many teaspoons are in a cup. How many teaspoons are in 1 cup?"(「今料理をしていて、ティースプーン何杯分で 1 カップ分になるか知りたいのですが、何杯分で 1 カップになりますか」) |
|
Integer
質問に対する投票の総数。ページが賛成票と反対票をサポートしている場合は、 |
Answer
Answer
タイプでは、Q&A ページの Question
に対して提案された回答と承認された回答を定義します。suggestedAnswer
プロパティと acceptedAnswer
プロパティの値として、Question
内に Answers
を定義します。
次の表で、Question
内で使用される Answer
タイプのプロパティについて説明します。
Answer
の完全な定義は https://schema.org/Answer で確認できます。
必須プロパティ | |
---|---|
|
Text
回答の全文。コンテンツの一部のみがマークアップされている場合、表示できないことがあります。表示に最適なテキストを Google が決定できないためです。 |
推奨プロパティ | |
---|---|
|
Integer
回答に対する投票の総数。ページが賛成票と反対票をサポートしている場合は、 |
|
URL
回答に直接リンクしている URL。例: |
Search Console でリッチリザルトを監視する
Search Console は、Google 検索におけるページのパフォーマンスを監視できるツールです。Search Console に登録していなくても Google 検索結果に表示されますが、登録することにより、Google がサイトをどのように認識しているかを把握して改善できるようになります。次の場合は Search Console を確認することをおすすめします。
構造化データを初めてデプロイした後
ページがインデックスに登録されたら、関連するリッチリザルトのステータス レポートを使用して、問題がないかどうかを確認します。有効な項目が増え、無効な項目が増えていない状態が理想的です。構造化データに問題が見つかった場合の手順は次のとおりです。
- 無効な項目を修正します。
- 一般公開 URL の検査を行い、問題が解決したかどうかを確認します。
- ステータス レポートを使用して検証をリクエストします。
新しいテンプレートをリリースした後やコードを更新した後
ウェブサイトに大幅な変更を加えた場合は、構造化データの無効な項目が増加しないかどうか監視します。- 無効な項目が増加した場合は、新しく公開したテンプレートが正常に機能していないか、既存のテンプレートの新しい操作方法に問題があると考えられます。
- 有効な項目が減少している(無効な項目の増加と一致しない)場合は、ページに構造化データが埋め込まれていない可能性があります。URL 検査ツールを使用して問題の原因を特定します。
トラフィックを定期的に分析する場合
パフォーマンス レポートを使用して Google 検索のトラフィックを分析します。このデータから、検索でページがリッチリザルトとして表示される頻度、ユーザーがページをクリックする頻度、検索結果におけるページの平均掲載順位がわかります。この結果は、Search Console API を使用して自動的に取得することもできます。トラブルシューティング
構造化データの実装またはデバッグで問題が発生した場合は、以下のリソースが参考になります。
- コンテンツ管理システム(CMS)を使用している場合や、サイトが他者によって管理されている場合は、それに応じて支援を依頼してください。その際は、問題の詳細を含む Search Console のメッセージを必ず転送してください。
- 構造化データを使用するコンテンツが必ず検索結果に表示されるとは限りません。コンテンツがリッチリザルトに表示されないときのよくある原因については、構造化データに関する一般的なガイドラインをご覧ください。
- 構造化データにエラーがある可能性があります。構造化データエラーの一覧を確認してください。
- 構造化データへの手動による対策をページに対して実施すると、ページ上の構造化データが無視されるようになります(ただし、Google 検索結果にはページは引き続き表示されます)。構造化データの問題を修正するには、手動による対策レポートを使用します。
- ガイドラインを再度確認し、コンテンツがガイドラインを遵守していないことを確認します。スパム コンテンツまたはスパム マークアップの使用が原因で、問題が発生する場合がありますが、これは構文の問題ではない可能性があり、リッチリザルト テストでは特定できません。
- リッチリザルトが見つからない場合またはリッチリザルトの合計数が不足している場合のトラブルシューティングをご覧ください。
- 再クロールとインデックスの再登録に要する時間を考慮してください。ページを公開した後、Google が対象のページを検出してクロールするまでに数日を要する場合があることに留意してください。クロールとインデックス登録に関する一般的な質問については、Google 検索のクロールとインデックス登録に関するよくある質問をご覧ください。
- Google 検索セントラル フォーラムでもご質問をお受けしています。