【追記あり】WordPress 4.6.1とSimple Map 2.14.3でエラーが出たから古いSimple Mapを手動で入れた
【追記】この件はブログに書いたら五十嵐さんのお陰で解決しましたです。ありがとうございました。(→追記ブログ)
東北IT物産展2016の五十嵐さんのスライド「WordPress + AWS で地方から世界へ!」を見ていて思いました。
「あっそうだ、WordPress4.6.1にアップデートしなきゃ……」
で、アップデートしたら、エラーが出てサイトが表示されなくなっちゃった。管理画面にも入れない。
Parse error: syntax error, unexpected T_FUNCTION in /xxxxxx/hogehoge/wp-content/plugins/simple-map/simple-map.php on line87
Simple Mapが原因のように見受けられる。
プラグイン一個がダメな時もサイト全体がダメになっちゃうのね、WordPressさん。
などど冷静にはなれず現実は「わーいはじめてWordPressぶっこわしちゃったーい」と焦ってました。
対処方法を検索しました。
まずはサーバのプラグインディレクトリの名前を変更、するものらしいです。
……はいはい、sshでログインして/wp-content/pluginsに行って
mv simple-map simple-map.disabled
これだけで、サイト自体は復活します。管理画面にも入れます。
Simple Mapのプラグインディレクトリがないため、WordPressは Simple Mapを停止。まずは一安心。
WordPressの管理画面から作業して一旦 Simple Mapを削除して、再度インストールしてみました。現象は同じ。ううむ。使えないのは困る。
検索したところ、同様の経験をしている人がいた。Simple Mapの古いバージョンだと行けるらしい。
Simple Mapの古いバージョンを手動で入れてみることにしました。
WordPressの管理画面からもういちどSimple Mapを削除して。
手順は、
(1) Simple Mapのプラグインサイトに行く
ja.wordpress.org
(2)URLの末尾にdownloadをつけると古いバージョンもダウンロードできるページが表示される
……古いバージョンのプラグインのURLをコピーしとく。
(3) サーバにログインして適当な作業ディレクトリ掘ってコピーしたURLからwget、unzip
[hogehoge ~/tmp]$ wget https://downloads.wordpress.org/plugin/simple-map.2.14.1.zip [hogehoge ~/tmp]$ unzip simple-map.2.14.1.zip
※ 2.14.2でも同じエラーで動きませんでした。なので2.14.1を使いました。
(4)WordPressのプラグインディレクトリに、tmpにできたsimple-mapを移動。
[hogehoge ~wp/hogehoge/wp-content/plugins]$ mv simple-map simple-map.disabled
(5) WordPressのプラグイン管理画面に行くと、手動で入れた古いSimple Mapがちゃんと停止中のプラグインとして入っている。
(6) 有効化し、エラーがでないことを確認。APIキーの取得を行い、設定画面から保存。
※APIキー取得ではドメイン指定に注意。ここが間違ってるとMap表示されない。
これで、無事復活しました。
あー良かった。