Search Consoleの構造化データテストで「image」フィールドの値は必須です。等のエラーが出て只今対処中。

Search Console & AMP

突然ですが、googleの「構造化データのテスト」したことありますか?
構造化データのテスト
使い方は、調べたいサイトのURLを貼り付けて「テストを実行」ボタンを押すだけ。まだの方は、試してみるのも面白いです。
この記事は「テスト結果はエラーだらけ、困ったな・・・」と考える「Wordpressユーザー」を対象にしたものです(私)。
「header.phpにソースコピペ」を行い、ついでに「AMPプラグイン」を入れたら解決します。



サーチコンソール(Search Console)の概要

構造化データ云々・・・の内容などはともかく、Wordpressで作っているサイトでエラーが出たので、すぐなんとかしたい!であれば、ずずっと以下のソースをheader.phpにコピペ(する前に数点の準備があります)しておくととりあえず一件落着となります。

ただ、エラーに対応せずとも、構造化データ云々の内容は「クロールとインデックス、ランキングに悪影響を与えることはありません。」とありました。

自分はこれを読んで、検索結果に関係ないことであれば別にいいか、としばらく放置していたのですが、別の探し物をしていたとき、たまたまウェブマスターヘルプフォーラムがヒットして、こういうこと(雑談にあります↓)を見つけてしまいまして、もし自分がそんなこと言われると受け答えがツライなと感じたので、ちょっとムキになって頑張って書きはじめた次第です。

書き始めるとサーチコンソールのこととか、AMPとか出てきて、少し奥深いなと感じたのですが、試して、試行錯誤しながら微調整してみた結果のソースが出来上がりまして、きちんと学んだ達成感がありました。ダイジェスト的にしか書いていませんが、よろしかったら参考にしてください。

雑談です(記事を書き始めるきっかけとなったもの)

グーグル謹製のヘルプフォーラムです。

先日、偶然この中のウェブマスターヘルプフォーラムのトピック「構造化データに意味不明のエラーが出る」にたどり着きました。

「構造化データに意味不明のエラーが出る」トピックより。
※このトピックを見るには、タイトルで検索してみてください。googleのページです。

「サーチコンソールのエラーで素朴に困ってる」質問に、この回答はないよなー。です。


詳細は提示したドキュメントにすべて書かれています。

Articles | Search | Google Developers
https://developers.google.com/search/docs/data-types/articles

ここに書かれている仕様に従って、Articleに必要な構造化データを schema.org/Ariticle で記述してください。
もしわからないとしたら、無視するしかないのです。

的確です。けど、ねぇ・・・。って思った人は、多いのでは。英語に近しくない自分、そうです。

ということで、別に聞かれてるわけじゃないけども、無性に勉強したくなりました。学んだことと実践したことをまとめて、自分が勝手に回答してみます、ということで始まりです!きっかけはどうであれ、自分自身学ぶこと多かったです。

そもそも「Search Console」って何?

この「Search Console(サーチコンソール)」はgoogleが無償提供するWeb診断ツールのかたまりです。昔は「ウェブマスター ツール」と言っていたそうです。

サーチコンソールに思う自分的な解釈
・googleは検索結果を表示させるための前段階でクローラがこういう情報を集めてます。
・けど、機械的に集める中でこういう部分がちょっとダメな感じがしました。
・ので、そういうところを見ておくといいですよ。テストもできます。

ツールの機能について自分が理解しているところの簡易説明です
・クロールしてて見れないですよー、とか、
・あなたのサイトのコンテンツはこういうキーワードと認識してます、とか、
・これくらいの人がサイトに来てますよ、とか、
・申し立て!とか。

いろいろあります。「Search Console 使い方」で検索したら、へーっていうことまで教えてくれるサイトもありますので、ぜひ。

ページコンテンツを分類するため標準化されたフォーマットを使いたいgoogleさん

google SearchのIntroduction to Structured Dataより日本語化して抜粋。


構造化データの概要
Google検索では、ページの内容を理解するのが難しくなります。ページに構造化データを含めることによって、Googleにページの意味についての明白な手がかりを提供することで、私たちを助けることができます。構造化データは、ページに関する情報を提供し、ページコンテンツを分類するための標準化されたフォーマットです。


構造化データ形式
ほとんどの検索構造化データはschema.org ボキャブラリを使用していますが、schema.orgのドキュメントではなく、Google検索の動作に決定的なものとしてdevelopers.google.comのドキュメントに依存する必要があります。ここに記載されていない属性やオブジェクトは、schema.orgが要求するようにマークされていてもGoogle検索では必要ありません。開発中に 構造化データテストツールを使用し、Web展開後にSearch Console構造化データレポートを使用して、テンプレートの提供またはサービスの問題によりWeb展開後に破損する可能性のあるページの状態を監視してください。


可能であれば、JSON-LDを構造化データとして使用することをおすすめします。

英語圏ページ。グーグル機械翻訳ですが、かなり日本語になっていて、なんとなく意味がつかめます。
要するに、

世界標準フォーマットを使っていきましょうよ! お互いメリットありますよ。

ということです。

「構造化データエラー」について

本題の核心に迫ります。

cancelauthor
「author」フィールドの値は必須です。
cancelimage
「image」フィールドの値は必須です。
cancelpublisher
「publisher」フィールドの値は必須です。
warningdateModified
「dateModified」は推奨フィールドです。値があれば指定してください。
warningmainEntityOfPage
「mainEntityOfPage」は推奨フィールドです。値があれば指定してください。

こんな感じですよね。エラーで出て来るフレーズ。これは、

「検索エンジン向けの情報提供をgoogle仕様でやってくれたら嬉しい。」

つまり、「このWebページにはこういうことが書かれていますよ」を仕様どおりに書いてあれば嬉しい、それだけのことです。

次の一般的なガイドラインに沿ってサイトを作成すると、Google がサイトを認識し、インデックスに登録し、ランク付けをするプロセスをスムーズに行う手助けになります。
ウェブマスター向けガイドライン(品質に関するガイドライン)より

とありました。

きちんと書いてなくても検索サービスを提供するに、なんとなくやっていけてるから神経質にならなくてもいいよ。例えて言うなら、

罰則規定のある「規則」事項なので皆さん必至に取り組んでください!

というものではなく、

心づかいの原因としての結果がいつかどこかで現れる「道徳」的な事項ですから、やるといいですよ(多分)。

自分は「グーグルさんがやろうとしている仕事」の趣旨に賛同すると、結果的にどこかの場面で「恩恵を受けることになる」ので、できる範囲で頑張ることにします、と考えています。

そして、最近、SEO対策では普通に言われる「content is king(コンテンツは王様)」。幾度もアップデートが続き、googleは情報の品質を何より重視してサイトのランクづけをするようになっています。ここ最近は検索すると良質なコンテンツばかりヒットしますよね。コンテンツが100%超える期待度で書かれたサイトであれば、重箱の隅をつつく技術的な作業をしなくてもSEO的には大丈夫、となります。世のサイトはhtml間違いだらけである、を前提にして作られた検索エンジンが日々動いてくれているようなのです。

なので、そのサイトのコンテンツの品質が放つ色や光や熱意が、不十分なソースコードをほぼ無いものとしてくれると思います。

そんなエラーに立ち向かうための手順

エラーを解消するためのソースコピペ前の諸準備があります。
1.テーマフォルダ内に「logo」フォルダ、その中に「publogo.png」ファイルを作る。
2.「publogo.png」は 横80px 高さ60pxでpng形式。それを「logo」フォルダへ投入。
  ※ロゴについて、横600px以下/高さ60px以下で作成する必要あります。
  ※以下ソースをコピペで済ます場合は、ロゴを横80px/高さ60pxにあわせてください。
3.以下に記載されたソースを「header.php」にある「head」タグ内にコピペする。
4.参考情報ですが、日付フォーマットは下のようなISO8601フォーマットが必要とのことです。

“datePublished”: “2017-05-19T13:10:37+00:00”, //投稿日時
“dateModified”: “2017-09-20T18:42:34+00:00”,//更新日時

ISO8601フォーマットは、
投稿日時 echo get_the_date(‘c’);
更新日時 echo get_the_modified_date(‘c’); で出力されます。
いずれも()内の’c’は DATE_ISO8601 という文字だけに差し替えても同じ結果を得ることできます。
WordPressのcodexの日付と時刻の書式より。
こんなことも出力できるんですね。

下準備は終わった。で、具体的にソースはどれ?

以下をheader.php にある「head」タグ内にコピペします。

内容はWordpress関数を活用して「求められている構造化データ」が収まっているJSON-LD形式を作っています。
JSON-LD(JSON for Linking Data)←データが乱雑で切断されています。JSON-LDはそれを整理して接続し、より良いWebを作成します。とのこと。クローラーにサイトの情報を漏れなく伝えるための理路整然とした構文のようです。

JSON-LDの基本的な書き方はこちらの記事を参考にしながら、テストでエラーとなった単語を拾って埋めていきました。

Google推奨「JSON-LD」で構造化マークアップ

構造化データのエラー回避についての対応はここまでとなります。以下は、最近スマホで爆速表示されるWebについてです。

AMPとかschemaとか構造化データとか知っ得情報。

AMP(Accelerated Mobile Pages/アクセラレーテッド・モバイル・ページ)

には「AMP には schema.org を JSON-LD で設定することが必須」とか日本語として書いてあって、それだけじゃ意味がまーったく分からないじゃん、なのですが、なんとなく今回の記事内容に関係してる部分あるよな、、、と調べているうちに、この画像(↓)を「ACCELERATED MOBILE PAGES PROJECT」で見つけて、グーグルさんがやりたいことのイメージが推測できました。

グーグルが検索のため、Webページを集めてキャッシュで保存してる

ここ最近モバイル端末からの閲覧が多い

スマホなどの端末で爆速で表示されるサイトがある

図にある一番下の「Google AMP CDN」コンテンツデリバリーネットワークが怪しい。

仮説。もしかして検索結果一覧でクリックした先のページはgoogleサーバーにある?

仮説。予め用意されていた検索結果を表示するのと同じようにGoogleサーバーがふるまう?

仮説。スタイルシートはほぼ適用されてなくて、コンテンツに不要なものが削がれている。

ということであれば、CMSであってもあらかじめ爆速で表示させるページが保存されてる?

まとめると、検索結果をクリックするとグーグルさんはAMPキャッシュ保管庫にある記事を初回に出す

ので、AMPコンテンツの生成をしているサイトは爆速で表示される?ので対応しておくべきことなのでは?

実際のところ良くわかりませんが、いろいろ調べると何か出てきそうな気配です。
ここでは、「対応しておいたほうがいい」という説に立って、次へ進みます。

AMPコンテンツを自動生成させる

AMPのサイトを見ると、手順的にはHTMLでAMPページを別途つくらないとならない、云々、とのことですが
WordPressのプラグインに「AMP」というものがあり、それをインストールして有効化するだけでAMP対応ページが生成されるようになります。Akismet Anti-Spamなどを作ってくれてるAutomattic社の謹製プラグインです。

※amp なんだかエラーが止まらないので、プラグイン削除しました。スマホで見てもampあまり使ってない。こだわりなくしてブログ書くことにしました。優先順位からそんな理由です。すいません。(20191102記載)

AMP — WordPress サイトに AMP サポートを追加
※AMPコンテンツ生成のみで、モバイル端末からの訪問者に対して自動的に表示を切り替えるものではない。

最後に

正しく実装できているかどうかを調べるgoogle謹製のAMPテストツールはこちら(↓)
AMPテストツール(https://search.google.com/test/amp)

を行ってみて、サーチコンソールで検証してみて、エラーがなさそうなことを見定めてみてください。
きっと寝れます。

僕はこれで寝れるなと思いました。
AMPテスト結果の画像

しかし、残念ながら、サーチコンソールの「構造化データのテスト」では変わらずエラーが出てました・・・。必須だとか、エラーだとか。けども必要項目はちゃんと値として渡しています。HTMLのソースを見たらきちんと出力されてました。ので「構造化データのテスト」ツール自体がエラー起こしてるんじゃないの?としております。強気です。

この先の情報はまた分かり次第、まとめようと思います。

2017年12月8日現在の検証結果。

↑↑↑↑↑↑↑↑↑↑↑↑↑↑ちゃんと出力されてるじゃんねぇ。。。これの何が駄目?
誰か分かる方おられたら教えてください。。。

2018年2月5日現在の検証結果。
先月、サーチコンソールツール内で「Fetch as Google」なるものでサイト情報を登録しました。
そして今日、久しぶりに見てみると、1件のエラーとなっていました!やった。グーグルに勝った。

1件アンプエラーの画面
1件アンプエラーの画面
これが該当ページ。
AMP For WordPress」という名称のプラグインで「WordPress サイトに AMP サポートを追加」する自動機能が頑張ってくれたおかげです。

1件アンプエラー詳細の画面
このエラーはワードプレスのAMP化自動プラグインが自動的に挿入させているIDなのでそのうちプラグインの修正があるかと思いますのでそれまで放置です。というかプラグインの更新してね情報出てました。
AMP化自動プラグイン
これです。。。更新します。多分修正されているハズ。
無事終了しましたのでこの記事の追記を終わりにします。

2018年2月16日現在の結果。
googleさん、ありがとう。。。
amp合格の写真



SNSでもご購読できます。

コメントを残す

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)