こんにちは、オイケです。
この記事では、Google Search Consoleで、”タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。”というAMPエラーが出た場合のその原因と解決方法について解説します。
私はWordPressでブログを書いており、Cocoonという無料テーマを使用しています。
よって、Cocoonの設定画面を用いてAMPエラーの解決方法を解説しますが、他のテーマにも応用できると思います。
amp-auto-ads複数エラーの意味
2020年6月25日に、Google Search Consoleを見てみると、上図のとおり、、“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーが出ていました。
6月7日からAMPエラーが検知され始めて、6月25日時点ではAMPエラー数が65個になっています。
私自身、htmlもcssもJavaScriptもわからないので、「amp-auto-ads」の意味もわかりません。
恐らく、エラーとなった記事ページ内に「amp-auto-ads」の文字列が複数あるのでエラーになったのだと思います。
記事内の実際のエラー箇所については、上手のピンクで囲んでいる「yubinid?amp=1」という記事を調べてみることにします。
実際のエラー箇所
エラーページのエラー箇所
「yubinid?amp=1」という記事内のAMPエラー箇所については、以下の2つの図を見て下さい。
①のピンク枠内に「amp-auto-ads」の記述がありますが、これは今回のAMPエラーとは関係ないようです。
②と③の黄色枠内の「amp-auto-ads」近辺の記述が同じであり、この記述が1つの記事内に複数あることが問題のようです。
[参考]エラーにならないページの該当箇所
参考として、AMPエラーにならなかった「drive-recorder?amp=1」という記事内の「amp-auto-ads」の記述箇所について、以下の2つの図を見て下さい。
②の黄色枠内の「amp-auto-ads」近辺の記述が、この記事内に1か所しかないためAMPエラーにならないようです。
なぜこの記事には、「amp-auto-ads」近辺の記述が1か所しかないのかを調査したところ、この記事ではGoogle AdSense広告を非表示設定しているためであることがわかりました。
知っている人にとっては常識かと思いますが、「amp-auto-ads」はGoogle AdSenseの広告コードの設定に関係しているようです。
そこで、現状のGoogle AdSenseの広告コードの設定状況を調べてみることにしました。
amp-auto-ads複数エラーの原因
結論を先に言いますと、“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーの原因は、
ということでした。
しかし、この余計なスクリプトを追記したのは2018年12月頃なので、なぜ2020年6月7日からAMPエラーとなったのかは不明です。
エラー原因はamp-head-insert.php
WordPressの①外観→②テーマエディター→③amp-head-insert.phpをクリックすると上図が表示されました。
ピンク枠で囲んだ箇所が余計なスクリプト記述です。
このピンク枠で囲んだ箇所を削除することで、AMPエラーが解決しました。
では、上図のピンク枠の記述をどこから持ってきたのかについて、以下の2つの図で解説します。
Google AdSenseで、①広告→②サマリー→③広告ユニットごと→④コードを取得の順にクリックすると、以下の画面に切り替わります。
画面上部のHTMLをクリックせず、AMPをクリックすると上図画面が表示されます。
私は上図のピンク枠のスクリプトを、amp-head-insert.phpの一番下に追記していたようです。
私は下図のとおり、Cocoon設定のAMPタブ内で、AMP機能を有効化するにチェックを入れています。
AMP機能を有効化するにチェックを入れることで、Cocoonが自動的に記事ページの<head></head>タグの間にスクリプトを入れてくれるのではないかと思います。
それにも関わらず、私はamp-head-insert.phpにスクリプトを追記していたため、“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーが発生したのだと考えられます。
[参考]AdSense広告の登録内容は問題無し
今回のAMPエラー原因の解析中に、AdSense広告の登録内容についても確認し、問題無いことが判りましたので、参考として紹介します。
上図のピンク枠内は、私がCocoonに設定しているAdSense広告コードです。
上図のピンク枠の記述をどこから持ってきたのかについて、以下の2つの図で解説します。
Google AdSenseで、①広告→②サマリー→③広告ユニットごと→④コードを取得の順にクリックすると、以下の画面に切り替わります。
画面上部のHTMLをクリックすると上図画面が表示されます。
ピンクの枠内がAdSense広告コードであり、この広告コードは、Cocoonに登録されている広告コードと一致しているので、問題ありません。
amp-auto-ads複数エラーの解決方法
繰り返しの説明になりますが、、“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーの解決方法は、amp-head-insert.phpファイル内の上図ピンク枠内のスクリプトを削除することです。
amp-auto-ads複数エラー解消の確認
“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーが解消されたのかについて確認する方法を2つ紹介します。
確認する前に、上図のとおり、①Cocoon設定→②キャッシュ削除→③AMPキャッシュの削除をクリックして、AMPキャッシュを削除します。
AMPキャッシュを削除せずに以下の方法で確認しても、エラーが残ったままでした。
The AMP Validatorで確認
AMPエラーが解消されたのかについて確認については、最終的にはGoogle Search Consoleで確認しますが、結果が出るまでに数日かかります。
よって、即確認ができるThe AMP Validatorを使いました。
上図は、amp-head-insert.phpファイル内に余計なスクリプトがある状態でチェックした結果です。
①https://oikeblog.com/yubin-id?amp=1 入力→②VALIDATEをクリックすると、ピンク枠のとおり、エラーメッセージが出ました。
上図は、amp-head-insert.phpファイル内に余計なスクリプトを削除し、AMPキャッシュを削除後、チェックした結果です。
エラーメッセージが消えました。
これにて問題解決、のはずです。
Google Search Consoleでの確認
上図のとおり、日々、“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーの数が減っています。
7月末までには、AMPエラー数がゼロになると思います。きっと。
まとめ
2020年6月6日までは出ていなかった、“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーが6月7日から出始めました。
AMPエラーの原因は、amp-head-insert.phpファイル内に余計なスクリプトを記述していたためでした。
Cocoon設定のAMPタブ内で、AMP機能を有効化するにチェックを入れている場合は、amp-head-insert.phpファイル内にスクリプト記述の追記は不要であることが判りました。
AMP機能を有効化した場合は、amp-head-insert.phpファイル内にスクリプト記述の追記が必要だと思い込んで追記していたようです。
amp-head-insert.phpファイル内にスクリプト記述を削除したことで、“タグ「amp-auto-ads extension .js script」がドキュメントで複数回使用されています。“というAMPエラーの数が日々減ってきています。
同様のエラーで困っている人は、この記事を参考に解決してみましょう。
では、また。
コメント