パンくずリストの構造化警告対策[LION BLOG]

パンくずリストの構造化警告対策[LION BLOG]

先日「Google Search Console Team」よりアイキャッチ画像にあるようなメールが届きました。

このブログサイトでは『LION BLOG』テーマを採用しているのですが、この「data-vocabulary.org」を使用しているため、この警告メールが届いてしまったということです。早く対応したいところですが、現時点で公式サイトより修正版が配布されておらず、結局自分で対応しました。

今回この「data-vocabulary.org schema deprecated」の警告の意味と直し方をご紹介します。

「data-vocabulary.org」とは?

そもそも「data-vocabulary.org」とは何でしょうか?

これは検索結果に表示されるパンくずリストなどの構造化データのマークアップ方法です。

この方式はすでに古いもので、現在Googleは「schema.org」を推奨しています。

このまま放置するとどうなる?

「 data-vocabulary.org 」は2020年4月6日までサポートされます。それまでに対応していないとメールにはこのように記載されています。

警告によっては、検索結果での表示に影響がある場合がございます。

断定はできませんが、おそらく検索順位が下がる可能性が高いですね。そうなるとPV数にも影響が出てきてしまうので早めに対応してしまいましょう。

対応方法

冒頭で説明したとおり、このブログサイトでは「LION BLOG」を使用しているので、これに特化した方法をご紹介します。

もしも他のテーマを使用しているのであれば、そのテーマの公式サイトにて修正版が配布されているかどうかご確認ください。

なお今回ご紹介する方法は、テーマファイルを修正する方法になります。正常に表示されなくなることもありますので、万が一に備えてバックアップを取ることをおすすめします。あくまでも自己責任でお願いします。

執筆時点のWordpressバージョン:5.3.2
LION BLOGテーマバージョン:2.0.0

1. WordPressの管理画面にて、[外観]-[テーマエディター]をクリックします

管理画面メニュー

2. テーマを「LION BLOG」に変更し、テーマファイルを「Theme Functions(functions.php)」をクリックします
※「テーマのための関数(functions.php)」という表示の場合もあります

テーマの編集画面

3. 以下の通りに修正します

変更前
4896行:			$str.= '<ul class="breadcrumb__list">';
4897行:			$str.= '<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. home_url() .'/" itemprop="url"><span class="icon-home" itemprop="title">'. $home .'</span></a></li>';
変更後
4896行:			$str.= '<ol class="breadcrumb__list" itemscope itemtype="http://schema.org/BreadcrumbList">';
4897行:			$str.= '<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. home_url() .'/" itemprop="item"><span class="icon-home" itemprop="name">'. $home .'</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4905行:			$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="' .get_post_type_archive_link( $cpt ).'" itemprop="url"><span itemprop="title">'. get_post_type_object( $cpt )->label.'</span></a></li>';
変更後
4905行:			$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="' .get_post_type_archive_link( $cpt ).'" itemprop="item"><span itemprop="name">'. get_post_type_object( $cpt )->label.'</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4911行:				$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_term_link( $ancestor, $my_tax->taxonomy ) .'" itemprop="url"><span itemprop="title">'. get_term( $ancestor, $my_tax->taxonomy )->name .'</span></a></li>';
変更後
4911行:				$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_term_link( $ancestor, $my_tax->taxonomy ) .'" itemprop="item"><span itemprop="name">'. get_term( $ancestor, $my_tax->taxonomy )->name .'</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4922行:					$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_category_link( $ancestor ) .'" itemprop="url"><span itemprop="title">'. get_cat_name( $ancestor ) .'</span></a></li>';
変更後
4922行:					$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_category_link( $ancestor ) .'" itemprop="item"><span itemprop="name">'. get_cat_name( $ancestor ) .'</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4936行:			$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="' .get_post_type_archive_link( $cpt ).'" itemprop="url"><span itemprop="title">'. get_post_type_object( $cpt )->label.'</span></a></li>';
変更後
4936行:			$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="' .get_post_type_archive_link( $cpt ).'" itemprop="item"><span itemprop="name">'. get_post_type_object( $cpt )->label.'</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4943行:				$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_term_link( $ancestor, $mytax ).'" itemprop="url"><span itemprop="title">'. get_term( $ancestor, $mytax )->name . '</span></a></li>';
変更後
4943行:				$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_term_link( $ancestor, $mytax ).'" itemprop="item"><span itemprop="name">'. get_term( $ancestor, $mytax )->name . '</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4946行:			$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_term_link( $tax, $mytax ).'" itemprop="url"><span itemprop="title">'. $tax -> name . '</span></a></li>';
変更後
4946行:			$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_term_link( $tax, $mytax ).'" itemprop="item"><span itemprop="name">'. $tax -> name . '</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4956行:				$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_category_link( $ancestor ).'" itemprop="url"><span itemprop="title">'. get_cat_name( $ancestor ). '</span></a></li>';
変更後
4956行:				$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_category_link( $ancestor ).'" itemprop="item"><span itemprop="name">'. get_cat_name( $ancestor ). '</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4959行:			$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_category_link( $cat -> term_id ). '" itemprop="url"><span itemprop="title">'. $cat-> cat_name . '</span></a></li>';
変更後
4959行:			$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_category_link( $cat -> term_id ). '" itemprop="item"><span itemprop="name">'. $cat-> cat_name . '</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4967行:					$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_permalink( $ancestor ).'" itemprop="url"><span itemprop="title">'. get_the_title( $ancestor ) .'</span></a></li>';
変更後
4967行:					$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_permalink( $ancestor ).'" itemprop="item"><span itemprop="name">'. get_the_title( $ancestor ) .'</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4975行:				$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_year_link(get_query_var('year')). '" itemprop="url"><span itemprop="title">' . get_query_var( 'year' ). '年</span></a></li>';
4976行:				$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_month_link(get_query_var( 'year' ), get_query_var( 'monthnum' ) ). '" itemprop="url"><span itemprop="title">'. get_query_var( 'monthnum' ) .'月</span></a></li>';
変更後
4975行:				$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_year_link(get_query_var('year')). '" itemprop="item"><span itemprop="name">' . get_query_var( 'year' ). '年</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
4976行:				$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_month_link(get_query_var( 'year' ), get_query_var( 'monthnum' ) ). '" itemprop="item"><span itemprop="name">'. get_query_var( 'monthnum' ) .'月</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
4981行:			$str.='<li class="breadcrumb__item" itemscope itemtype="http://data-vocabulary.org/Breadcrumb"><a href="'. get_year_link( get_query_var('year') ) .'" itemprop="url"><span itemprop="title">'. get_query_var( 'year' ) .'年</span></a></li>';
変更後
4981行:			$str.='<li class="breadcrumb__item" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a href="'. get_year_link( get_query_var('year') ) .'" itemprop="item"><span itemprop="name">'. get_query_var( 'year' ) .'年</span><meta itemprop="position" content="'. ++$position .'" /></a></li>';
変更前
5014行:			$str.='</ul>';
変更後
5014行:			$str.='</ol>';

4. 終わったら一番下にある「ファイルを更新」をクリックし完了です

5. 表示に問題がないかどうか確認してください

まとめ

パンくずリストの構造化警告への対策方法をご紹介しました。

もしも「 data-vocabulary.org 」を使用したままですと、検索順位にも影響があるかもしれませんので、早めの対応をおすすめします。