functions.phpの変更後にエラーで画面が真っ白になったとき

WordPress個別サポート

WordPressテーマのfunctions.phpは特別に注意が必要なファイルで、編集するときに1文字間違えるとアウトです。ダッシュボードやサイトにエラーメッセージが表示されて画面が真っ白になってしまいます。

functions.phpにエラーがあるというメッセージ
functions.phpにエラーがあるというメッセージ

ダッシュボードにはアクセスできなくなります。

そのような状況になるたびにWordPressを再インストールしている方もいるようなので、そこまでしなくても復旧できる裏技のような復旧方法を紹介します。

WordPressを再インストールする前に試してみてください。

復旧する方法は簡単に言えば、FTPツールを使ってテーマのフォルダを削除するというだけです。

この作業を行うと、テーマの中に書き込んだカスタマイズ用のコードも削除されます。「WordPress本体を再インストールするよりはマシ」ということで単純にテーマフォルダを削除する方法を紹介しますが、カスタマイズのために書き込んだコードが消えてしまっては困るという方は、以下の手順でテーマフォルダを削除する前にテーマのフォルダをバックアップしておいてください。

以下、ロリポップレンタルサーバーの例で説明しますが、他のレンタルサーバーやFTPソフトウェアを使っても同じ作業ができるので参考にしてください。

ロリポップを含めて主なレンタルサーバーのFTPツールは次のメニューから使用可能です。

  • ロリポップ --- 「Webツール」‐「ロリポップFTP」メニュー
  • さくらインターネット --- 「運用に便利なツール」‐「ファイルマネージャー」メニュー
  • エックスサーバー --- インフォパネルの「ファイルマネージャ」メニュー

ロリポップレンタルサーバーのユーザー専用ページにあるメニューから「Webツール」‐「ロリポップ!FTP」を選択してロリポップ!FTPにアクセスします。

ロリポップ!FTPへ
ロリポップ!FTPへ

WordPressをインストールしたフォルダを開きます。

WordPressインストールフォルダへ
WordPressインストールフォルダへ

wp-contentフォルダを開きます。

wp-contentフォルダへ
wp-contentフォルダへ

themesフォルダを開きます。

themesフォルダへ
themesフォルダへ

使用中のテーマが格納されているフォルダ(1)(例:Twenty Fourteenの場合はtwentyfourteen)をチェックして「削除する」(2)をクリックします。

※削除するとテーマに記述したカスタマイズ用のコードも全て削除されます。削除前にテーマをバックアップしたい方はテーマフォルダのバックアップも参考にしてください。

使用中のテーマを削除
使用中のテーマを削除

削除確認が表示されるので「OK」ボタンをクリックします。

フォルダの削除確認
フォルダの削除確認

フォルダが削除されたことを確認します。

フォルダが削除される
フォルダが削除される

ダッシュボードに戻って、ブラウザを更新します。「選択したテーマはありません。」のようなエラーメッセージが表示されるかもしれません。

さらにエラーメッセージが表示される
さらにエラーメッセージが表示される

ここであせらず、ダッシュボードのアドレス(例:http://example.com/wp-admin)にアクセスしましょう。

なんとか、ダッシュボードが表示されるようになるはずです。

ところが、「外観」-「テーマ」メニューにアクセスすると、「エラー: テーマディレクトリ "twentyfourteen" がありません。」のような警告が表示され、テーマのサムネイルも表示されません。

テーマフォルダがないことの警告が表示される
テーマフォルダがないことの警告が表示される

ここでもあせらずに、テーマの「新規追加」をクリックしてテーマを再インストールしましょう。

テーマを再インストール
テーマを再インストール

テーマを検索して「インストール」をクリックします(WordPressのバージョンによってメニューが異なるので、適宜、読み替えてください)。または入手済みのテーマファイルをアップロードしてインストールしましょう。

テーマを検索してインストール
テーマを検索してインストール

有効化すれば、何事もなかったようにテーマが元に戻ります。ただし、カスタマイズしたコードは消えていますが。

テーマが復旧される
テーマが復旧される

サイト表示も元通りに戻るはずですが、メインメニューやヘッダー画像などはリセットされているかもしれないので、「外観」-「メニュー」や「外観」-「ヘッダー」から選び直しましょう。

テーマフォルダのバックアップ

テーマフォルダをバックアップするには、フォルダをチェックして「コピーする」をクリックします。

※ロリポップ!FTP特有の機能です。他のレンタルサーバーやFTPソフトウェアの場合は、その機能を活用してください。

フォルダのバックアップ
フォルダのバックアップ

コピー先のフォルダを選択して、「このフォルダへコピーする」をクリックします。ここでは便宜上、wp-content/uploadsフォルダを選択しています。

コピー先フォルダの選択
コピー先フォルダの選択

テーマフォルダがコピーされます。

バックアップされたテーマ
バックアップされたテーマ