News
お知らせ
FAQの構造化マークアップ完全ガイド|JSON-LDサンプル・WordPress設定・リッチリザルト表示のコツ
「FAQをGoogleの検索結果に展開表示させたい」「JSON-LDの書き方がわからない」「WordPressで設定したのにリッチリザルトが出ない」
この記事では、FAQの構造化マークアップ(FAQPage)の仕組み・JSON-LDサンプルコード・WordPressでの設定方法・リッチリザルトが表示されない原因と対処法をコピーして使えるコードつきで徹底解説します。AI検索(GEO対策)への効果についても解説します。
この記事でわかること
- FAQの構造化マークアップとは何か・何が変わるか
- FAQリッチリザルトのCTR・AI検索への効果
- Googleのガイドライン・表示される条件
- JSON-LDのサンプルコード(コピーして使える)
- WordPressでの設定方法(プラグイン・手動の両方)
- 実装後の確認方法(リッチリザルトテスト・Search Console)
- よくある失敗・エラーの原因と対処法
本記事の構成
1. FAQの構造化マークアップとは?リッチリザルトで何が変わるか
― 検索結果にQ&Aが展開表示されるようになる技術 ―
FAQの構造化マークアップとは、Webページ内のよくある質問(FAQ)のコンテンツに対して、「これはFAQの質問です」「これはその回答です」というラベルをコードで明示する技術です。JSON-LDという形式で記述し、`<script type=”application/ld+json”>` タグ内に記載します。
FAQの構造化マークアップを実装すると、GoogleはそのページをFAQPage(よくある質問ページ)として認識し、検索結果にQ&Aを展開表示する「FAQリッチリザルト」の表示候補となります。
FAQリッチリザルトの見え方(検索結果でのイメージ)
FAQの構造化マークアップ完全ガイド|JSON-LDサンプル・…
https://crevia-ts.com › archives › 1223
FAQの構造化マークアップ(FAQPage)の書き方・JSON-LDサンプルコード・WordPressでの設定方法をわかりやすく解説。
▼
▼
▲ 検索結果でのFAQリッチリザルト表示イメージ(実際の表示はGoogleの判断による)
- 検索結果にQ&Aが最大2〜3問展開表示される
- 検索結果上で占めるスペースが大きくなりクリック率(CTR)が向上する
- AI検索(ChatGPT・Gemini・AIオーバービュー)で回答として引用されやすくなる
- ページへの信頼感が増し、問い合わせ・購入率の向上につながる
2. FAQリッチリザルトの効果|CTR向上・AI検索引用への影響
― 同じ順位でも「見え方」が変わるとクリック数が変わる ―
FAQリッチリザルトが表示されると、検索結果上でページが占めるスペースが大幅に拡大します。競合ページと並んでもひときわ目立つため、同じ検索順位でもクリック率が平均20〜30%向上するとされています。特に3位〜10位圏内のページで効果が出やすい傾向があります。
FAQの質問・回答が検索結果上で読めるため、クリック前にページの内容・信頼性を伝えられます。「この会社はちゃんと答えてくれそう」という印象を与え、クリック後の直帰率低下・問い合わせ率向上につながります。
ChatGPT・Gemini・GoogleのAIオーバービューなどのAI検索は、構造化された質問と回答のペアを「信頼できる情報源」として優先的に参照します。FAQの構造化マークアップを実装することで、AI検索の回答に自社の情報が引用される確率が高まります。
FAQの構造化マークアップが特に効果的な業種・ページ
FAQの構造化マークアップは、他のタイプ(Product・Eventなど)と比べて実装のハードルが低く、かつ効果が出やすいタイプです。業種を問わずほぼすべてのサイトに適用できるため、構造化マークアップの導入を検討している場合は最初にFAQから始めることをお勧めします。
3. 表示される条件とGoogleのガイドライン
― 守らないとペナルティになるルールを事前に確認する ―
FAQの構造化マークアップを実装しても、Googleのガイドラインを満たしていなければリッチリザルトは表示されません。また、ガイドライン違反が重大な場合はペナルティの対象となります。実装前に必ず確認しておきましょう。
FAQリッチリザルトが表示される主な条件
Googleのガイドライン違反になる実装(ペナルティリスクあり)
- ページに表示されていない質問・回答を記述する(隠しコンテンツへの実装)
- 広告・プロモーション目的のFAQを記述する(「今すぐ購入」などの誘導文言のみ)
- 同一ページに複数のFAQPageタイプを記述する(1ページに1つのFAQPageのみ有効)
- 実際の内容と異なる情報を構造化データに記述する(スパム的な実装)
- ユーザーの疑問に答えない「形式だけのFAQ」を大量に記述する
ガイドラインを満たした正しい実装をしても、Googleのアルゴリズムがそのページへの表示を適切でないと判断した場合はリッチリザルトが表示されないことがあります。特定のクエリやページの性質によっては表示されないケースがあることを理解した上で実装してください。
4. JSON-LDの書き方・サンプルコード(コピーして使える)
― 基本構造を理解してから用途に合わせてカスタマイズする ―
FAQPage JSON-LDの基本構造
以下がFAQPageの最もシンプルな構造です。`Question` と `Answer` のペアを `mainEntity` 配列の中に並べます。
{
“@context”: “https://schema.org”,
“@type”: “FAQPage”,
“mainEntity”: [
{
“@type”: “Question”,
“name”: “ここに質問文を記述します”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “ここに回答文を記述します”
}
},
{
“@type”: “Question”,
“name”: “2問目の質問文”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “2問目の回答文”
}
}
]
}
</script>
| @type: “FAQPage” | このページがFAQページであることを宣言する必須プロパティ |
| mainEntity | 質問と回答のペアを配列で並べる。複数のFAQを記述する場合は配列を増やす |
| name | 質問文。ページ内の実際の質問と一致させること |
| acceptedAnswer.text | 回答文。HTMLタグは使用可能だが、ページ内の回答と内容を一致させること |
実践サンプル:サービス業向け(問い合わせ・費用FAQ)
実際のサービスページへの適用例です。このままコピーして質問・回答を書き換えてご利用ください。
{
“@context”: “https://schema.org”,
“@type”: “FAQPage”,
“@id”: “https://example.com/service#faq”,
“mainEntity”: [
{
“@type”: “Question”,
“name”: “費用はいくらかかりますか?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “ご依頼内容によって異なりますが、33,000円〜対応しております。まずはお気軽にお問い合わせください。現在のサイト環境をお聞きした上で費用感をご案内します。”
}
},
{
“@type”: “Question”,
“name”: “既存のサイトに後から実装できますか?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “はい、既存サイトへの後付け実装も可能です。WordPressサイトであれば比較的容易に追加できます。”
}
},
{
“@type”: “Question”,
“name”: “効果が出るまでどのくらいかかりますか?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Googleがページを再クロール・インデックスした後にリッチリザルトが表示されます。早ければ数日〜1週間、長い場合は1か月以上かかることもあります。”
}
}
]
}
</script>
text内で改行する場合は\nを使用(HTMLタグも使用可能)- 日本語の文字はそのまま記述可能(UTF-8エンコード)
- ダブルクォーテーション(”)を文中で使う場合は
\"とエスケープする - 最後の要素の後ろにカンマを付けない(末尾カンマはJSON構文エラー)
- @graphを使って他の構造化データ(Article・BreadcrumbListなど)と1つのscriptタグにまとめることができる
自社サイトへの実装を代行してほしい方へ
JSON-LDの記述・実装・Googleへの検証確認までCREVIAが一括対応します。WordPressサイトへの導入も承っております。
5. WordPressでの設定方法|プラグイン vs 手動JSON-LD
― 目的と技術レベルに合わせて方法を選ぶ ―
WordPressでFAQの構造化マークアップを実装する方法は大きく3つあります。それぞれの特徴を理解して自社に合った方法を選んでください。
方法①Yoast SEO / RankMathのFAQブロックを使う(最も簡単)
- ブロックエディタ(Gutenberg)で投稿・固定ページを開く
- ブロック追加(+)から「よくある質問(FAQ)」ブロックを挿入
- 質問・回答を入力する
- Yoast SEO または RankMath が自動でFAQPageのJSON-LDを生成・出力する
- 保存・更新して完了
方法②カスタムHTMLブロックにJSON-LDを直接記述する
- ブロックエディタで「カスタムHTML」ブロックを追加
- セクション4のサンプルコードをコピーして貼り付ける
- 質問・回答テキストを自社のFAQに書き換える
- 保存・更新して完了
方法③functions.phpにwp_head()フックで出力する
特定のページIDや投稿タイプに対してのみJSON-LDを出力したい場合に適しています。子テーマの functions.php に以下のようなコードを追加します。
add_action( ‘wp_head’, ‘crevia_faq_structured_data’ );
function crevia_faq_structured_data() {
if ( ! is_page( 100 ) ) return;
// ここにサービス固有のFAQを設定
$faqs = [
[ ‘q’ => ‘費用はいくらですか?’, ‘a’ => ‘33,000円〜対応しております。’ ],
[ ‘q’ => ‘対応エリアはどこですか?’, ‘a’ => ‘熊本を中心に全国対応しております。’ ],
];
$items = [];
foreach ( $faqs as $faq ) {
$items[] = [
‘@type’ => ‘Question’,
‘name’ => $faq[‘q’],
‘acceptedAnswer’ => [ ‘@type’ => ‘Answer’, ‘text’ => $faq[‘a’] ],
];
}
$schema = [ ‘@context’ => ‘https://schema.org’, ‘@type’ => ‘FAQPage’, ‘mainEntity’ => $items ];
echo ‘<script type=”application/ld+json”>’ . wp_json_encode( $schema, JSON_UNESCAPED_UNICODE ) . ‘</script>’;
}
コードが書けない・HTMLの知識がない場合は方法①が最も簡単です。プラグインなしで対応したい・既存のFAQセクションに後から構造化データを追加したい場合は方法②が適しています。サイト全体を管理・自動化したい開発者向けには方法③をお勧めします。
6. 実装後の確認方法|リッチリザルトテスト・Search Console
― 「実装した」で終わらず、必ず検証まで行う ―
STEP 1|Googleリッチリザルトテストでエラーを確認する
Googleが提供する無料ツール「リッチリザルトテスト」(search.google.com/test/rich-results)でページURLを入力して検証します。
- 「FAQPage」として認識されているかを確認
- エラー(赤)・警告(黄)が表示された場合は内容を確認して修正する
- エラーなしで「FAQPage のリッチリザルトの資格があります」と表示されれば実装は正しい
STEP 2|Search ConsoleのURL検査でクロールをリクエストする
実装後はGoogleに再クロールを促すことで、リッチリザルト表示までの時間を短縮できます。
- Google Search Console にアクセス
- 上部の検索バーに対象ページのURLを入力
- 「URL検査」結果画面で「インデックス登録をリクエスト」をクリック
- 「リクエストを送信しました」と表示されれば完了
STEP 3|Search Consoleの「検索での見え方」でリッチリザルトの状況を確認する
数日〜数週間後に、Search Console の「拡張機能」→「よくある質問」レポートで状況を確認します。
- 「有効」件数が増えていればリッチリザルトとして認識されている
- 「エラー」が表示されている場合は詳細を確認して修正する
- 「有効(警告あり)」の場合も表示されるが、警告内容を確認して改善する
JSON-LDをページに貼り付けただけでは実装完了ではありません。リッチリザルトテストでエラーなしを確認し、Search Consoleで「有効」として認識されるまでが実装の完了です。外注する場合もこの確認まで対応してくれる業者を選んでください。
7. よくある失敗とエラーの原因・対処法
― 「リッチリザルトが表示されない」ときに確認すること ―
症状:リッチリザルトテストで「解析エラー」が表示される
対処:末尾のカンマ(最後の要素の後ろに付けるのはNG)・括弧の対応・ダブルクォーテーションの閉じ忘れを確認。JSONバリデーターサイト(jsonlint.comなど)に貼り付けて構文チェックすると原因が特定しやすい。
症状:エラーはないがリッチリザルトが表示されない・Search Consoleで警告が出る
対処:JSON-LDのnameとtextの内容が、ページ上にユーザーが実際に見られる形で記載されているかを確認する。完全一致でなくても良いが、内容が大きく異なるとガイドライン違反とみなされる可能性がある。
症状:ページのソースを確認するとJSON-LDの山括弧が < > に変換されている
対処:カスタムHTMLブロックではなく「テキスト」モードで貼り付ける。またはwpautopフィルターが干渉している場合はfunctions.phpでremove_filter(‘the_content’, ‘wpautop’)を追加する。
症状:リッチリザルトテストで警告が表示される・一部のFAQが認識されない
対処:1ページにFAQPageタイプのscriptタグは1つのみにする。Yoast SEOなどのプラグインが自動生成するFAQと手動で追加したJSONが重複していないか確認する。@graphを使って1つのscriptにまとめることを推奨。
症状:リッチリザルトテストではエラーなし・Search Consoleでも「有効」だが実際の検索結果に表示されない
対処:Googleのアルゴリズムがそのページへの表示を適切でないと判断している可能性がある。対象ページの検索順位・コンテンツ品質・E-E-A-T評価の改善を合わせて行うことで表示されやすくなるケースがある。また、2023年以降GoogleはFAQリッチリザルトの表示対象を「信頼性の高いサイト」に絞り込んでいるため、ドメイン全体のSEO評価を高めることも重要。
8. よくある質問(FAQ)
FAQの構造化マークアップ実装をご検討の方へ
「自社サイトにFAQの構造化マークアップを実装したい」「JSON-LDの記述・検証まで任せたい」「他のタイプと合わせてSEO・GEO対策を進めたい」など、どのような段階でもご相談ください。CREVIAでは構造化マークアップの実装をSEO対策・GEO対策(AI検索最適化)と一気通貫でご支援します。
▶ 構造化マークアップサービスの料金・詳細を見る
▶ 無料相談・お問い合わせはこちら
熊本・全国対応|SEO対策・GEO対策・ホームページ制作と一気通貫で対応
関連記事
株式会社CREVIA|構造化マークアップ実装・SEO対策・GEO対策・ホームページ制作|熊本・全国対応
熊本から全国へ。SEO・GEO・ホームページ制作を一気通貫でご支援します。
