こんにちは。fsです。
おかげさまで当ブログも110記事を超えました。
ブログ少しずつ軌道に乗りつつあったので、先日張り切って記事を書こうとしていたらWordpressでトラブルがあり一時的にブログが消滅するというトラブルがありました。
今こうして記事が書けているということは無事復旧はできたことを意味するのですが、そのときはかつてないほどに焦りました。
僕自身このようなトラブルを2度と起こしたくないのと、同じようなエラーが出て悩んでいる方のために今回の体験談をシェアしたいと思います。
「トップページにエラーが出た!直したいな😩」
「Wordpressのテーマをいじってたら、いきなり”致命的なエラー”が出た。どうしよう😱」
こんな経験をしている方に読んでいただければ嬉しいです。
それではご覧ください。
ことの発端
原因は当サイトで使っているWordpressテーマ、Cocoonのアップデートによるものでした。
サイト自体は問題ないのですが、トップ画面に警告文(Warning)が出ていました。
これ自体は問題ないのですが、ビジター目線からするとあまり良くないので(信頼度が下がりそうなので)、エラーコードのファイルをいじってなんとかしてみようと考えました。
WordPressの操作に関してはある程度自信を持っていたので、簡単に直せると思っていたからです。これが間違いでした。
※自信の背景はこちら
↓↓↓↓↓↓↓
エラー発生!!
早速、テーマエディターで対象のファイル(access-func.php)を選び、エラーがあるコードを見てクリックしながら確認しました。
複雑な関数だったので何もせず保存したら、いきなり
テーマで致命的なエラーが発生しました
WordPressダッシュボード
と出て、管理画面にアクセスできなくなりました。
慌ててウェブサイトのURLをクリックしても真っ白。。。
再び管理画面にアクセスしてみましたが、やはりダメ。。。
背筋が凍るとはまさにこのことでした。
「やばい」
100記事を超え、ブログがもはやライフワークになっていた僕は途方に暮れていました。
「この先どうしたらいいだろう😩」
しばらくボーッとしていたら、Wordpressから以下のメールが来ていました。
WordPress 5.2から、サイトでプラグインやテーマが致命的なエラーを発生させた場合にそれを検知してこの自動メールでお知らせする機能が追加されました。
WordPressからのメール
今回の場合、WordPress がテーマ Cocoon でエラーを捉えました。
まずはじめに、ご自分のサイトを開き、目に見える問題がないか確認してください。
次に、エラーが発生したページを開き、同様に問題がないか確認してください。
この問題をさらに調査するにはサーバーホストに連絡してみてください。
もしサイトが壊れていてダッシュボードに正常に接続できない場合、WordPress には特別な「リカバリーモード」があります。これによりダッシュボードに安全にログインし、さらに調査をすることができます。
(リカバリーモードリンク)
サイトを安全に保つため、このリンクは 1日 で有効期限が切れます。
ですが、心配なく。有効期限後にこのエラーが再度発生すれば新しいリンクをお送りします。
この問題を解決しようとする際、以下の情報を聞かれるかもしれません。
WordPress バーション5.8.1
現在のテーマ: Cocoon Child (バージョン 1.1.2)
現在のプラグイン: (バージョン )
PHP バージョン7.3.25
サイトが破損した時には『リカバリーモード』というものがあることがわかりました。
さすがはWordpress。
リカバリーモードのリンクをクリックしたところ無事管理画面に入れました。
ただ、ファイル自体は壊れたままだったので、一向に復旧ができません。
考えること10分。
「そうだ!テーマそのものが壊れているっぽいからテーマ自体を変えてみよう!」
思い切ってデフォルトで入っているテーマ(Twenty Twenty)を使用したら、無事トップページが出てきました。
ただ、レイアウトがかなり変わってしまったので、なんとかCocoonに戻したい。。。
そこで一度テーマを削除して再度インストールすることに。
再インストール後は(デザインがデフォルトなものの)無事復旧できました。
あとはレイアウトやメニューなどを以前のものにカスタマイズし、作業完了です。
このトラブルで
親テーマやfunctionファイルは極力触らない方が良い
という教訓を得ました😌
警告文(Warning)を消す
元のテーマに戻してほっとしたものの、警告文(Warning)は出たままでした。
根本的な解決はアップデートを待つしかなさそうだったので、ググってみた結果、応急処置としてプラグインで警告を消すことにしました。
使ったのはFree customizeというプラグインです(ダウンロードはこちら)。
プラグインエディターにいき、以下のコードを記入するだけで警告文の表示がなくなりました。
<?php
/*
Plugin Name: Free Customize
Plugin URI: https://www.nishi2002.com/tools/free-customize/
Description: カスタマイズ用のプラグイン
Version: 0.1
Author: Naoki Nishizawa
Author URI: https://www.nishi2002.com/
*/
// 警告文を消す
error_reporting(0);
最初からこうしてればよかったです😅
バックアップをとる
今回のトラブルを経験し、『サイトに万が一の事態が生じたときの対応』を考えるようになりました。
現在は週一でバックアップをとるようにしています。
まとめ エラーも学びの機会
冷や汗ものの対応でしたが、新しい学びの機会になりました。
今回の教訓は以下のとおりです。
・優秀なテーマでもバージョンアップに伴い、トラブルは起こりうる ・対処法はまずググってみる ・親テーマおよびfunctionファイルはいじらない(悲劇が起きる) ・間違ってエラーが生じたときはバックアップモードを使う ・テーマが破損したら新しいのに置き換える ・未来のトラブル備え定期的にバックアップをとる
結果として
- 経験値を積めたこと
- すぐ冷静になること
- 記事のネタができたこと
などのメリットがあったので、結果オーライです(笑)
本記事をご覧になった方で、他の対処法をご存知であればぜひコメント欄で情報をいただけますと幸いです。
今回は以上です。
最後までお読みいただきありがとうございました。
コメント