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

2019年11月21日WordpressカスタマイズAMP,Luxeritas,Wordpress

 

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

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

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

AMP Validatorでチェック

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

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

<scriptasynccustom-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でアクセスされている場合にはタグを追加するようにした。

<?phpif( isset( $luxe['amp'] )) {
?><scriptasynccustom-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が「もうすぐエラーになる」というメッセージを送ってくるレベルのエラーはなくなった。

Posted by webnetforce