Google Search Consoleからエラーが通知されたのですが、AMP for WPプラグインのバグのようです。
タグ「amp-ad」のレイアウト「width」に含まれる属性の値が無効です
AMP for WPというプラグインを使っているのですが、バージョン0.9.85.1でレスポンシブデザインの広告が扱えるようになりました。
そこで有効にしたのですが、Google Search Consoleから「タグ「amp-ad」のレイアウト「width」に含まれる属性の値が無効です」というエラーが通知されました。
生成されたAMPページのソースコードを見てみると、
<amp-ad class="amp-ad-3" type="adsense" width=100vw height=320 data-ad-client="XXXXX" data-ad-slot="XXXXX" data-auto-format="rspv" data-full-width><div overflow></div></amp-ad> |
と生成されていました。Googleの指定は、
- AMP 対応広告ユニットの作成方法(Google)
で説明されており、
<amp-ad width="100vw" height=320 type="adsense" data-ad-client="ca-pub-1234567891234567" data-ad-slot="1234567890" data-auto-format="rspv" data-full-width> <div overflow></div> </amp-ad> |
です。
問題はダブルクォーテーションの有無
Googleのソースコードをよく見ると、属性にアルファベットが含まれる場合はダブルクォーテーションで囲み、数値の場合はそのまま記述しています。
プラグインが生成するコードは、width属性に対してもダブルクォーテーションを付けずに記述しているためエラーとなっているようです。
間違い:
- width=100vw
正解:
- width="100vw"
これを直してもエラーが発生するなら、AMPの定義とGoogle Search Consoleとで不整合が発生していることになります。
まとめ
プラグインのソースコードを修正すれば直りますが、レスポンシブをオフにするか、アップデートされるのを待った方がよいかもしれません。
コメント