Blog

テーマの追加画面で「予期しないエラーが発生しました」メッセージが表示される【WordPress】

エラーが発生

WordPressでテーマを追加しようと「新規追加」ボタンを押したところ「予期しないエラーが発生しました。…」のエラーが発生。

私の場合の解決方法を残しておこうと思います。

※環境:Windows 10 Home、XAMPPのローカルにWordPressを構築している状態。

 

発生原因

ネットでいろいろ調べたところ、原因と復旧方法は次のパターンがありました。

①原因不明⇒WordPressの再インストールで復旧

②WordPress.orgのサーバーダウン⇒復旧を待つ

③サーバーの設定が悪さをしている⇒サーバー設定を見直す

④テーマが悪い⇒テーマを変更する

 

結果から言うと私の場合は、④でかつfunction.phpが悪さをしていたのですが、それ以外のところも参考になるかもしれないので残しておきます。

 

検証

まず、『①の原因不明だがWordPressの再インストールで復旧した』というケース。ローカルの環境であったため一番最初に試しましたが全く効果なし。実際の本番環境では、正直実行するのは怖いのでこれを最初にやるのはおすすめしません。

 

次に②の『WordPress.orgのサーバーダウン』しているケース。こんなケースはまれだと思いますが、別のWordPress環境などがあれば、その環境から同じようにテーマ>新規追加をしてみて同じ現象になるかを確認してみるとよいと思います。私の場合は別環境からは問題なく接続可能でしたのでこれが原因ではないと判断。

 

次に『③サーバーの設定が悪さをしている』ですが、XAMPPでほぼ初期設定のまま使用し、このエラーの前後で何か設定をいじっていたわけでもないため可能性は低いと判断(0ではないですが)し、次を試すことに。

 

最後に、『④テーマが悪い』ケースです。私の場合、テーマを別のテーマに変更したところ、エラーがなくなりました。エラーになるテーマは自作していたテーマで、何が悪いのか探した結果function.phpのとある関数がエラーの原因でした。

テーマが悪いのかの検証は、テスト環境でやったほうがよいと思います。検証にはデータは必要ないので、エラーになっている環境の「wp-content/theme/」をテスト的に作った環境にコピーしエラーが発生するか試してみましょう。発生するならfunction.phpを除外して再度発生するかの切り分けをしていく感じが良いと思います。(ちなみにfunction.phpがなくてもwordpressは動きます)

 

※余談ですが私のエラーになっていた関数は、動作の確認としていれていたadd_action(‘init’, function() {…}が原因でした。