AMPエラー”「amp-ad」で必要なタグ「amp-ad extension .js script」がないか、正しくありません”に対処する

WordpressWordpress, Luxeritas, AMP

当サイトでは先日よりGoogle Adsenseの関連記事広告を用いるようにしたのだが、それ以降Google Search Consoleに次のようなエラーが出るようになってしまった。

「amp-ad」で必要なタグ「amp-ad extension .js script」がないか、正しくありません。これはまもなくエラーとなります。

今回は、Wordpressでこのエラーに対処した方法をメモ。

AMP Validatorでチェック

AMP Validatorで詳しくチェックをしてみると、同じようにエラーが表示されている。

The AMP Validator
AMP HTML Project Web Validator. Tests Accelerated Mobile Pages for valid markup.

amp-erro

どうやら、この「The tag ‘amp-ad extension .js script’ is missing or incorrect, but required by ‘amp-ad’. This will soon be an error.」に対処するためには、以下のコードをAMPページの中に挿入する必要があるようだ。

<script async custom-element="amp-ad" src="https://cdn.ampproject.org/v0/amp-ad-0.1.js"></script>

私の場合、Luxeritasというテーマを使用していて、このテーマにはAMPで表示されているかどうかを「isset( $luxe[‘amp’] )」という関数を用いてチェックできるようになっている。

今回はこれを用いて、Wordpressに上記のタグを追加する。

amp-adのjavascriptを追加

上記のamp関数を用いてAMPでアクセスされている場合にはタグを追加するようにした。

<?php
if( isset( $luxe['amp'] )) {
?>
<script async custom-element="amp-ad" src="https://cdn.ampproject.org/v0/amp-ad-0.1.js"></script>
<?php
}
?>

ちなみに、デフォルトで別のタグが挿入されているのだが、これはamp-func.phpのthk_amp_extensions() からamp-adをコメントアウトすることで消去。

再びAMP Validatorでチェックしたら、先ほどのエラーは表示されなくなった。

ということで、なぜデフォルトで読み込まれているamp-adのjavascriptがダメなのかはよく分からないが、ネットに転がっているものに差し替えたところエラーは消失。

本当は他にも直さないと行けないところがあるのだが、Google Search Consoleが「もうすぐエラーになる」というメッセージを送ってくるレベルのエラーはなくなった。

執筆者紹介

Thir

最新のガジェットを購入してはレビューする、を繰り返しています。このブログでは、ガジェットの紹介のほか、各種サーバーやスマートホームの構築などを提供しています。最近はYouTubeでもレビュー動画やVlogをあげています。(プロフィール