Yoast SEOが出力する構造化データとは?

Yoast SEOはWordPressで非常に人気のあるSEOプラグインです。インストールするだけで、構造化データを自動で出力し、検索エンジンにページの意味を明確に伝えることができます。
Yoastが自動で生成する主な構造化データは以下の通りです:

  • WebPage(全体ページ)
  • Article(ブログ記事)
  • Organization(会社情報)
  • BreadcrumbList(パンくずリスト)

これらはすべてJSON-LD形式で、検索エンジンがページを理解しやすくなるため、SEO効果を高め、リッチリザルト(検索結果における拡張表示)の表示にも貢献します。


自作JSON-LDを出力する際の注意点

自作JSON-LDを出力することで、さらに詳細な情報を検索エンジンに伝えることができますが、注意すべきポイントがあります。

1. 重複に注意

Yoast SEOがすでに出力している構造化データと、自作JSON-LDで出力した内容が重複すると、検索エンジンが混乱し、リッチリザルトが表示されなくなる可能性があります。例えば、ArticleOrganizationタイプのデータが二重に記述されている場合です。

2. 自作が有効なケース

自作JSON-LDを活用する場面としては、以下のようなケースが考えられます:

  • BlogPosting:Yoastが出力するArticleのデータに、さらに詳細な記事情報を加えたい場合
  • ProductFAQPageEvent:Yoastが自動的に出力しないタイプのデータを追加したい場合

このように、Yoastが出力しないデータを補完するために、自作JSON-LDを利用するのは非常に有効です。


Yoastの構造化データを無効化する方法

Yoast SEOの構造化データは便利ですが、場合によっては不要な構造化データを無効にしたいこともあります。例えば、パンくずリストの構造化データを無効にしたい場合などです。

全て無効化する場合

Yoastが自動で出力するすべての構造化データを無効にするには、以下のコードをテーマのfunctions.phpファイルに追加します:

add_filter('wpseo_json_ld_output', '__return_false');

特定のタイプだけ無効化する場合

特定のデータタイプ(例:パンくずリスト)のみを無効化するには、次のようにカスタマイズできます:

add_filter('wpseo_json_ld_output', function($data) {
foreach ($data as $key => $entry) {
if (isset($entry['@type']) && $entry['@type'] === 'BreadcrumbList') {
unset($data[$key]);
}
}
return $data;
});

これにより、Yoast SEOが自動で出力する構造化データの一部を無効化することができます。


Yoastと自作JSON-LDを“共存”させるベストプラクティス

Yoast SEOと自作JSON-LDを共存させるためのベストプラクティスを以下にまとめます。

1. 重複タイプの出力は避ける

Yoastと自作JSON-LDで同じデータタイプ(例:ArticleOrganization)を出力しないように、どちらか一方を選択するか、片方を補完的に追加する方法を取ります。

2. 詳細なスキーマを自作で追加する

Yoastが出力する基本的な構造化データをベースに、さらに詳細な情報を自作JSON-LDで追加するのが理想です。例えば、YoastのArticleをそのまま使用し、BlogPostingを追加して記事情報をさらに充実させるといった方法です。

3. 自作追加の場所とタイミング

自作JSON-LDを出力するタイミングは、wp_headis_single()などの条件付きで追加します。これにより、個別ページでのみJSON-LDを出力できるようになります。

function add_blog_jsonld() {
if (is_single()) {
$image_url = get_the_post_thumbnail_url() ?: 'https://example.com/default.jpg';
?>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": <?php echo wp_json_encode(get_the_title()); ?>,
"author": {
"@type": "Person",
"name": <?php echo wp_json_encode(get_the_author()); ?>
},
"datePublished": "<?php echo get_the_date('c'); ?>",
"image": <?php echo wp_json_encode($image_url); ?>,
"description": <?php echo wp_json_encode(get_the_excerpt()); ?>
}
</script>
<?php
}
}
add_action('wp_head', 'add_blog_jsonld');

これで、個別の記事に対してBlogPostingの構造化データが自動で追加されます。


実際の共存設計例

実際に、Yoast SEOが出力するArticleと自作JSON-LDで出力するBlogPostingを共存させる設計例を紹介します。

{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "記事タイトル",
"author": {
"@type": "Person",
"name": "著者名"
},
"datePublished": "2025-07-10",
"image": "https://example.com/image.jpg",
"description": "記事の概要"
}

この設計により、検索エンジンは記事の内容をより詳細に理解できるようになり、SEO効果を高めます。


まとめと実践アクション

Yoast SEOと自作JSON-LDは、上手に共存させることができます。重要なのは、重複を避け、補完的な情報を追加することです。実際に自社サイトに取り入れ、リッチリザルトの表示を目指してみましょう。

次にやるべきこと:

  1. Yoast SEOの出力する構造化データを確認し、必要な自作JSON-LDを追加。
  2. Googleリッチリザルトテストを使用して、構造化データの出力内容を確認。
  3. サイト全体のSEO効果を最適化するために、構造化データを定期的に見直し。

ビジネスの成長に繋がるウェブ設計を始めましょう。あなたのサイトに適したSEO戦略を構築することで、競争力を高めることができます。

もし、SEO設計や構造化データの実装についてご不明点があれば、こちらからお気軽にお問い合わせください。あなたのウェブサイトに最適なサポートを提供いたします。