8月5日公開のAMPプラグインをアップデートしたらエラーが発生してしまいました。
AMPはアップデートすると追記したアドセンスやアナリティクスをAMPページで動作させるために追記したコードを上書きしてしまい消してしまいます。
上書きされるとAMPページでアドセンスやアナリティクスが正常に動作しないことになるので、Googleが公開しているAMPテストで確認するとエラーをはき出してしまうことになります。

このまま放置しておくわけにもいかないので、対策方法を考えてみることにしました。
それでは見ていきましょう。
トラブルの原因を探る
「ページにユーザー作成のJavaScriptがある」と指摘されているエラー原因はアドセンス広告によるものです。確認したら通常のモバイルページのアドセンス広告をAMPが読み込んでしまっていることがわかりました。
AMP設定前の確認で、モバイルページのアドセンス広告をAMPが読み込むという動作はしなかったはずですが他に原因がわからないためAMP用にアドセンスやアナリティクスの追記コードを設定しました。
\ 関連記事を読む /
【WordPress】これでわかった!AMPの導入とアナリティクス対応手順
AMP導入でアドセンスが非表示に・・ AMPページ用アドセンスを表示させる方法!
ですが、やはりエラー表示は消えません。パソコンとAMPページのみにアドセンス広告を設置して通常のモバイルページのアドセンス広告を外せばエラーは消えますが、モバイルページのアドセンス広告はあまり消したくありません。
原因はプラグイン?
同じ状況のユーザーはいないのかと色々調べてみた結果、どうやら今回アップデートされたAMPプラグインに問題はあるのではないかということがわかりました。
本ブログへの問い合わせで知ったのですが、WordPressが公開しているAMPプラグインに問題があるようです。
(こんなブログにお問い合わせ頂いて恐縮ですm(_ _)m)
問題になっているのは昨日(2017/8/5)公開されたv0.5。
僕は普通にアップデートして問題なく動作しているのですが、一部の環境で
Fatal error: Cannot make static method AMP_Customizer_Design_Settings::
と表示され、サイトに一切アクセスできなくなるというもの(管理画面を含む)。
出典 : DRYFEED | WordPressのAMPプラグインで問題が発生しているようです
当ブログの場合とエラー原因が少し違いますが、今回のエラーはアップデートと重なっているのでおそらくそれが原因とみてほぼほぼ間違いはないかと思います。
こちらはwordpress.orgで英語表記ですが、昨日から数時間前といった状況下でAMPアップデートによるエラーが発生したという書き込みが多発しています。
⇒ https://wordpress.org/support/topic/new-version-showing-fatal-error/
Twitterでも
安易にampプラグイン更新したら見事にエラー吐き出すようになって朝から修正に追われてマジメガンテだわ。
— でろりん (@webronjp) 2017年8月5日
AMPのエラーというよりも、AMPのバージョンアップで、AMP for WPの方で致命的なエラーになってしまう、が正しいようです。
— Keroro@ロジカル投資 (@KeroroSgtFrog) 2017年8月5日
更新したらいきなりAMPが落ちた?
エラーでadminどころかサイトにもアクセス出来ない…
核弾頭級の時限爆弾や、マジ対策がわからん。— emo (@emodrum) 2017年8月5日
私自身もAMPのエラー対策に数時間とられ、今だ解決せず正直まいっている状態です。
対処法は?
当ブログもアップデート後にAMPページからのアクセスが激減しているので、記事を書いている場合ではなく早急に何かしらの対策をしなければならないのでしょう。
wordpress.orgのサポート書き込みやネット情報を参考にいくつかの対処法を考えてみました。
「その1」AMPの次のバージョンアップを待つ
AMPの提供元、Automattic社はWordPressを運営している企業なのでいわばAMPプラグインはWordPress公式のプラグインです。今回のバージョンアップによるエラーの影響が広く及ぶのであれば、近いうち次の修正バージョンを公開するはずです。
これが初心者にとっては一番簡単で確実な方法でしょう。とりあえず待つ、これです。
「その2」AMPを前バージョンに戻す
プラグインのバージョンアップによるエラーは、前のバージョンに戻すことで解決できるようです。バージョンアップ前はエラーが出ていなかったのでそうなりますね。
ということで、1つ前のバージョンに戻してどうなるものか見てみることにしました。これでエラーが解決しなければAMPプラグインを削除するかプラグインなしでAMPを実装するしかないかと。
1つ前のバージョンをダウンロード
待っていても何らかの対策をしない限り解決しないので、とりあえずAMPバージョンを1つ前に戻したいと思います。ちなみに現バージョンが0.5、前バージョンが0.4.2です。
まずはWordPressダッシュボードにアクセス、「プラグイン」→「インストール済みプラグイン」を選択します。
一覧の中からAMPを探し「詳細を表示」を選択します。

続いて右側「WordPress.org プラグインページ」を選択。

もう1度「詳細を表示」を選択。

次のページで一番下までスクロールし、「開発バージョン」のプルダウンメニュー内から「0.4.2」選択。続けて「ダウンロード」を選択します。

これで1つ前のAMPバージョンをダウンロードできました。

AMPのバージョンを戻す
ファイルをダウンロードしたところで、前バージョンに戻す手順を見ていきましょう。
先ほどのWordPressのダッシュボード「インストール済みプラグイン」画面に戻ります。少し勇気がいりますが、AMPの「停止」→「削除」と選択します。

確認のポップアップ表示です。OKを選択。

続いて「プラグインのアップロード」を選択。
「ファイルを選択」→「今すぐインストール」の順に選択してAMPをインストールします。

「プラグインを有効化を選択」
以下のように表示されますが、間違っても再度バージョンアップしないようにしましょう。
万が一してしまったらしょうがないのでその場合は先ほどの手順を繰り返して修正します。

すぐに確認してみましたが、何事もなかったようにエラー表示が解決していました。
これで無事解決、お疲れ様でした。

まとめ
他に今回のAMPバージョンアップでエラーになったため、一時的に外したアプリーチなどのブログパーツですがこちらもバージヨンを戻すことで改善されたので元に戻しました。
やはりプラグインのバージョンアップが原因だったのでしょうか。今回のアップデートで一時的でしたがアクセスが激減するといういたたまれない状況になってしまったため、余裕があればプラグインなしでAMPを実装してみようかなと少し考えています。というか今回はそこまでしなきゃいけないかなと心の準備をしていました。
エラー発覚から数時間。とりあえず解決できたので、一見落着です。
今回は以上になります。ありがとうございました。