wordpressで管理画面が真っ白になる状態を解決しました

真っ白になるのはよくあるトラブルです。一番怪しいのはプラグインのコンフリクトやphpのバージョン違いによるエラーです。その次に怪しいのがテーマ内のphpでのおなくじバージョン違いによるエラーです。

テーマやプラグインの変更はログインしないとできないので、dbを直接いじります。

まずphpMyAdminでwp_optionsテーブルのoption_nameがcurrent_themeのレコードを検索します。

SELECT * FROM `wp_options` WHERE `option_name` LIKE 'current_theme';

すると今のテーマがoption_valuの値がに格納されています。なので、これ例えば「Twenty Twelve」など、themesディレクトリに存在する他のものに変更します。

この状態でログインを試してみましたが、真っ白のままでした。

次にwp_optionsテーブルのoption_nameがactive_pluginsのレコードを検索します。

SELECT * FROM `wp_options` WHERE `option_name` LIKE 'active_plugins';

option_valuの値が例えば以下のようになっていますが、これをすべて削除して保存します。

a:9:{i:0;s:49:”advanced-tinymce-configuration/adv-mce-config.php”;i:1;s:36:”contact-form-7/wp-contact-form-7.php”;i:2;s:47:”custom-field-template/custom-field-template.php”;i:3;s:33:”instagram-feed/instagram-feed.php”;i:4;s:25:”tablepress/tablepress.php”;i:5;s:37:”tinymce-advanced/tinymce-advanced.php”;i:6;s:27:”wp-gpx-maps/wp-gpx-maps.php”;i:7;s:41:”wp-multibyte-patch/wp-multibyte-patch.php”;i:8;s:21:”wp-print/wp-print.php”;}

これは配列をシリアライズして、Mysqlのlongtextに保存している状態です。

すると真っ白にならずにログインできました。ということで、有効化しているいずれかのプラグインがトラブルの原因のようです。

一つずつ有効化して確認

あとは、プラグインを一つずつ有効化してみて、真っ白にならないかを確認。もし、真っ白になってしまったら、active_pluginsのoption_valuを空にして、他に問題のあるプラグインがあるかを確認していけば、トラブルを特定できます。

ちなみに今回トラブルを引き起こしたプラグインはtablepressでした。なので、phpのバージョンを7.4にするとともにmysqlも5.7に、さらにwordpressも最新バージョンにしたところ、tablepressも問題なく有効化できました。