Google Search ConsoleでAMPエラーが表示されています。以前から気になっていたのですが、めんどくさいので、長年放置していました。少し暇になったので、この問題を解決することにします。
AMPエラーって何だ?
Google Search Consoleを開き、サマリー ⇒ 拡張 ⇒ AMP と辿っていくと、「無効 51件」と表示されています。
その原因は、Google Search Console 画面に「許可されていない属性または属性値が HMTL タグにあります。」と書かれています。これは誤字で、正しくは「HTMLタグ」ですね。
こんなエラーが出る原因を探ると、[Easy Table Contents] という目次を作るプラグインが、自動生成した見出しの属性idに「amp」という文字を挿入していることが原因となっているようです。
「許可されていない属性または属性値が HMTL タグにあります。この問題がある AMP ページは無効です。無効な AMP ページは Google で配信されません」と書かれているので、対処した方がよさそうです。
でも、どうするの?
Easy Table Contents を削除し、Cocoon の目次を使う
目次を簡単に作れるプラグイン [Easy Table Contents」 をとても気に入っているのですが、あきらめて削除することにします。
以前、テーマを [Cocoon] に変更したとき、 [Easy Table Contents」とほぼ同じ機能が [Cocoon] の標準機能としてあることを知りました。プラグインの数は減らした方がよいので、 [Easy Table Contents」を削除し、[Cocoon] 側で設定することにします。
一応確認しましたが、この操作をしても、表示の不具合は発生しないようです。 [Easy Table Contents」の目次は消え、[Cocoon] の目次が表示されています。
AMPページは残っているので、エラーは出続ける
[Easy Table Contents」を削除すれば、AMPエラーは解消するかと思ったのですが、相変わらずエラー表示が出ています。
この原因は、AMPページが残っているからのようで、修正を送信しても、エラー表示は同じです。
そこで、AMPページを送らないように設定します。
AMPページを生成しない
1. エラーページのリストの行をオンマウスすると表示されるアイコン(URLをクリップボードにコピー)をクリック。
2. ブラウザの新規タブにコピーしたURLを貼り付ける。
3. このURLの最後に付いている [amp=1] を削除し、リターンキー (これが付いていると編集画面を表示できません)
4. 記事が表示されるので、記事上の [投稿を編集] をクリックして編集画面へ。
5. 右ペインの [投稿]タブ ⇒ 下の方にある [AMP] を探し、「AMPページを生成しない」にチェックを入れる。 ⇒ [更新]ボタン
次のメッセージが届きます。
「貴サイトの AMP に関する問題の修正の検証を開始いたしました。具体的には、49 ページに現在影響を及ぼしている「許可されていない属性または属性値が HMTL タグにあります。」について確認しております。検証には数日かかることがございます。処理が完了し次第お知らせいたします。以下のリンクにアクセスして、テストの進捗状況をご確認いただくこともできます。」
検証が終わり、エラーが解消したら、「AMPページを生成しない」のチェックを外してもよいのでしょうが、めんどくさいのでそのまま放置します。
作業終了から二日後に確認すると、エラーは全て消えていました。これでAMPエラーは解消です。