Yoast SEOが出力する構造化データとは?
Yoast SEOはWordPressで非常に人気のあるSEOプラグインです。インストールするだけで、構造化データを自動で出力し、検索エンジンにページの意味を明確に伝えることができます。
Yoastが自動で生成する主な構造化データは以下の通りです:
- WebPage(全体ページ)
- Article(ブログ記事)
- Organization(会社情報)
- BreadcrumbList(パンくずリスト)
これらはすべてJSON-LD形式で、検索エンジンがページを理解しやすくなるため、SEO効果を高め、リッチリザルト(検索結果における拡張表示)の表示にも貢献します。
自作JSON-LDを出力する際の注意点
自作JSON-LDを出力することで、さらに詳細な情報を検索エンジンに伝えることができますが、注意すべきポイントがあります。
1. 重複に注意
Yoast SEOがすでに出力している構造化データと、自作JSON-LDで出力した内容が重複すると、検索エンジンが混乱し、リッチリザルトが表示されなくなる可能性があります。例えば、ArticleやOrganizationタイプのデータが二重に記述されている場合です。
2. 自作が有効なケース
自作JSON-LDを活用する場面としては、以下のようなケースが考えられます:
- BlogPosting:Yoastが出力するArticleのデータに、さらに詳細な記事情報を加えたい場合
- Product、FAQPage、Event: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で同じデータタイプ(例:ArticleやOrganization)を出力しないように、どちらか一方を選択するか、片方を補完的に追加する方法を取ります。
2. 詳細なスキーマを自作で追加する
Yoastが出力する基本的な構造化データをベースに、さらに詳細な情報を自作JSON-LDで追加するのが理想です。例えば、YoastのArticleをそのまま使用し、BlogPostingを追加して記事情報をさらに充実させるといった方法です。
3. 自作追加の場所とタイミング
自作JSON-LDを出力するタイミングは、wp_head
でis_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は、上手に共存させることができます。重要なのは、重複を避け、補完的な情報を追加することです。実際に自社サイトに取り入れ、リッチリザルトの表示を目指してみましょう。
次にやるべきこと:
- Yoast SEOの出力する構造化データを確認し、必要な自作JSON-LDを追加。
- Googleリッチリザルトテストを使用して、構造化データの出力内容を確認。
- サイト全体のSEO効果を最適化するために、構造化データを定期的に見直し。
ビジネスの成長に繋がるウェブ設計を始めましょう。あなたのサイトに適したSEO戦略を構築することで、競争力を高めることができます。
もし、SEO設計や構造化データの実装についてご不明点があれば、こちらからお気軽にお問い合わせください。あなたのウェブサイトに最適なサポートを提供いたします。