ブロギングライフ

ブログサイト運営関連、AdSenseについての情報などを発信しています。

Search Console構造化データレポートでauthorがありませんのエラーが発生した場合の対処法

Search Console構造化データレポートでauthorがありませんのエラーが発生した場合の対処法

WordPress 標準テーマ Twenty Fifteenを使用したネイティブAMP対応のブログで、Search Consoleの構造化データレポートで「authorがありません」のエラーが発生しました。エラーの原因と対策について紹介します。

Search Consoleの構造化データレポートについて

Search Consoleの構造化データレポートは、細かいレベルでのエラーを含めて表示されるのが特徴です。構造化データテスティングツールでは、エラーとはならないURLでもSearch Cosnoleの構造化データのレポートではエラーとして表示されることがあります。

備考:
例えば、マークアップは問題なく行われていても、検索アルゴリズムが必要とみなす要素が含まれていないとSearch Consoleではエラーとして表示されます。これは現時点での仕様です。AMPテストでは、構造化データのマークアップがされていなかったり、足りない場合、警告が表示されていましたが、最近、仕様が変更され警告は表示されなくなりました。関連記事:Search Console AMPレポート表示開始。しかし、不可思議なステータス

Search Console 構造化レポートのエラーの調べ方

以下はSearch Console構造化レポートのトップページです。エラーが2つ発生しています。下側に表示されるデータタイプ別のリストから hatom のマークアップアイテムでエラーが発生していることが分かります。

Search Console 構造化レポートのトップページ

hatomの行をクリックするとページのURLリストが表示されます。エラーが発生しているページ(URL)は2つで、エラーの理由は「author がありません」であることが分かりました。

構造化データの hatom URL別のレポート表示

エラーとなっているURLを構造化データテスティングツールでテストすると、マークアップソース別にまとめられた結果が表示されます。テスティングツールには、エラーも警告も0になっています。赤枠で囲った部分が一つの記事(hentry)のマークアップで設定されている内容になります。マークアップ自体は問題なく設定されています。しかし、author (著者)が含まれていません。

構造化データテスティングツールのhatomのアイテムレポート

構造化データのテストでは、マークアップは問題なく出力されていても、記事情報(hentry)には、リッチリザルトでは含まれるべき要素、authorが含まれていないと検索のアルゴリズムは、エラーとして取り扱います。(現在の仕様での場合です。将来、変更になる可能性があります。)

Search Consoleの構造化データエラー発生に対する対処

エラーとして表示されているので、基本的には対処した方が良いですが、対処する上で、エラーの深刻度がどの程度であるかを理解することも重要です。

エラーの重要度・深刻度について

今回の場合は、構造化テスティングツールではエラーも警告も発生していません。検索においてリッチリザルトを表示する上での要素が足りないためエラーとして表示されているものです。構造化データのマークアップにエラーがある場合は、問題の程度は高くなります。逆に今回の場合は、問題の深刻度は低いとも言えます。

記事ページがリッチリザルトで表示されることは、現時点では多くありません。しかし、検索で表示されることが多いサイト、検索のクエリ経由の訪問が多いページで今回のようなエラーが発生している場合は、現在はリッチリザルトで表示されていなくても、将来、リッチリザルトで表示される可能性は少なからずあるため対処した方が良いです。

今回、エラーが発生しているページは、カテゴリーページです。記事ページではエラーは発生していません。一般的に、特定のサイトのカテゴリー一覧ページが検索に表示される可能性は低いです。そのためエラーの重要度としては、高くないと言えます。

しかし、検索エンジンのアルゴリズムがエラーとして取り扱っている状態であるため、対処しておいた方が良いことではあります。また、サイト運営者として、Search Consoleの構造化データのレポートでエラーが発生している状態のままにしておくことはできない(対処してエラーをなくしたい)と考える方もいると思います。

エラーの原因と対策

今回のエラーの原因は、カテゴリーページで表示される記事の author が構造化データにマークアップされていないためです。マークアップにauthorを加えることが対策となります。

Twenty Fifteenで発生した構造化データエラーの対策

WordPress 標準テーマ Twenty Fifteenでは、個別の投稿の場合、記事の最後に投稿日、著者(author)、カテゴリー、タグが表示される仕様になっています。

Twenty Fifteen の投稿のした部に表示されるタグ情報

表示の出力をする際に、構造化データのマークアップも行われます。投稿ページを構造化データテスティングツールでテストすると、マークアップに author も含まれています。Twenty Fifteenのデフォルトでは、カテゴリーやタグなどの一覧ページでは、author の表示は省かれます。(複数の投稿者(author)がいる場合は、表示されます。)

Twenty Fifteen ではカテゴリー一覧の記事下には著者は含まれずに表示されます。

日付、カテゴリー、タグは表示されていますが、著者が表示されません。Twenty Fifteenの場合、この箇所の構造化データのマークアップは、表示と同じ内容になります。

対策は、カテゴリーの一覧ページでも著者(author)を表示させるようにすることです。著者が表示されれば、マークアップもされます。(別の方法もあります。)

Twenty Fifteen のカテゴリー一覧ページの記事下に著者を加えて表示させる方法

作業前の準備

本設定は、テンプレートファイルを編集します。子テーマのテンプレートファイルを編集した設定は、テーマのアップデートでも行なっても保持されます。本作業を行う前に子テーマの作成・設定をすることをおすすめ致します。
備考:
WordPressの標準テーマの機能追加は、テンプレートファイルの編集を行う作業が比較的多くあります。子テーマを作成して、利用すると保守性、作業効率が良くなります。

テンプレートファイルの編集

以下の説明は、親テーマで操作を行っています。作業は子テーマで行うことを強くお勧め致します。編集するテンプレートファイル名は、小テーマでも同じです。

WordPressの管理メニューの「外観」から「テーマの編集」を選びます。テーマの編集ページの右上に表示される「編集するテーマを選択」からTwenty Fifteenとなっていることを確認します。(ここでは親テーマで編集を行っていますが、子テーマで編集する方が良いです。)

右側にテーマファイルと表示され、その下にテンプレートファイルの一覧がリスト表示されています。その中から、”inc”をクリックし、”template-tags.php”を選択します。template-tags.phpのソースコードが表示されます。

Twenty Fifteen template-tags の編集画面

注意事項:
上の画像の赤線部は変更後の記述です。

スクロールダウンして、以下の記述部を探します。このコード部は、単独記事(投稿または固定ページ)か複数の投稿者の場合の記事下のタグ記述設定を行うところです。

if ( ‘post’ == get_post_type() ) {
if ( is_singular()  || is_multi_author() ) {
printf(
‘<span class=”byline”><span class=”author vcard”><span class=”screen-reader-text”>%1$s </span><a class=”url fn n” href=”%2$s”>%3$s</a></span></span>’,
_x( ‘Author’, ‘Used before post author name.’, ‘twentyfifteen’ ),
esc_url( get_author_posts_url( get_the_author_meta( ‘ID’ ) ) ),
get_the_author()
);
}

カテゴリーページを条件に加えるため、以下の様にコードを変更します。

if ( ‘post’ == get_post_type() ) {
if ( ( is_singular() || is_category() ) || is_multi_author() ) {
printf(
‘<span class=”byline”><span class=”author vcard”><span class=”screen-reader-text”>%1$s </span><a class=”url fn n” href=”%2$s”>%3$s</a></span></span>’,
_x( ‘Author’, ‘Used before post author name.’, ‘twentyfifteen’ ),
esc_url( get_author_posts_url( get_the_author_meta( ‘ID’ ) ) ),
get_the_author()
);
}

設定内容を確認の上、「ファイルを更新」ボタンを押します。

カテゴリーだけでなくタグ一覧ページなどでも著者を表示させるようにする場合は、条件分岐に加える”is_category( )”の部分を “is_archive( )”にします。(全ての一覧ページで著者を含めて表示する設定)

表示と構造化データのマークアップ出力の確認

カテゴリーページを表示して、投稿ページと同様に記事下に著者が含まれて表示されているか確認します。設定が適切に行われていれば、著者が含まれて表示されるようになります。

続いて、構造化テスティングツールを使用してカテゴリーページのURLを入力してテストします。テスト結果のhatomをクリックして、hentry(記事情報のマークアップ)に author が含まれていれば大丈夫です。

カテゴリーページのマークアップにauthorが含まれているか確認します

以上で作業完了です。

Search Consoleのレポートは、更新されるまでに時間がかかります。適切に対処できれば、通常、1週間から10日程度で、Search Consoleの構造化データのレポートからエラーが無くなります。

構造化データ エラーが解消されました

Search Consoleの構造化レポートは、通常3から4日置きに更新されます。修正を行っていても、更新されるまでの間に、該当するページをクローラーが訪問していない、解析が終了していない場合は、エラーは継続して表示されます。

Search Console 構造化データレポートのエラーが無くなりました

今回の構造化エラーの対策は、9月17−18日に行いましたが、エラーは9月24日までは減らず、その次の更新日27日に減少し、10月1日に無くなりました。

コメントを残す(承認後表示されます)

*
*
* (公開されません)

Return Top
error: Content is protected !!