WordPressサイト運用中に「やらかしてしまった…!」というミスは意外と多く、特にデータベース(DB)まわりのミスはサイトが表示されなくなる重大トラブルに直結します。
ここでは、よくあるWordPressの「やらかし」、 対処(DB修正含む) を記します。
1 WordPressのURL設定を誤って変更した
「設定」→「一般」で「WordPress アドレス(URL)」または「サイトアドレス(URL)」を間違って変更してしまい、サイトにアクセスできなくなった
対処方法(DB修正)
■phpMyAdminで直接修正
サーバーのphpMyAdminにアクセス
該当のデータベース → wp_options テーブルを開く
option_name が siteurl と home の行を見つける
option_value を正しいURLに書き換える(例:https://example.com)
■wp-config.php に一時的に下記URLを記述
define('WP_HOME', 'https://example.com');
define('WP_SITEURL', 'https://example.com');
2 テーマやプラグインの編集で画面が真っ白(PHPエラー)
テーマやプラグインのコードを直接編集して、致命的なPHPエラーが出て画面が真っ白に
対処方法
FTPまたはファイルマネージャーから該当のファイルを戻す/修正
テーマファイルが壊れている場合:
管理画面に入れないときは、phpMyAdminで wp_options テーブル → template と stylesheet の値を変更(別のテーマ名に)
例:
UPDATE wp_options SET option_value = 'twentytwentyone' WHERE option_name = 'template';
UPDATE wp_options SET option_value = 'twentytwentyone' WHERE option_name = 'stylesheet';
3 プラグインやテーマが壊れて管理画面に入れない
不具合のあるプラグインやテーマを入れたことで、管理画面も含めて動かなくなった
対処方法
■FTPで該当ディレクトリをリネーム
/wp-content/plugins/該当プラグイン名 → xxx_該当プラグイン名
/wp-content/themes/該当テーマ名 → 同様にリネーム
■DBからテーマを変更(上記と同じくwp_options)
4 ユーザー名・パスワードを忘れた(ログイン不能)
管理者ログインできなくなった。パスワード再発行もできない
対処方法(DBからパスワードを再設定)
phpMyAdmin → wp_users テーブルを開く
管理者ユーザーの user_pass を以下に書き換え(パスワードは newpassword):
UPDATE wp_users SET user_pass = MD5('newpassword') WHERE user_login = 'admin';
5 DBをインポートしたら、URLやパスが古いまま
ローカル環境から本番へ移行したが、URLがローカルのままでリンクが壊れている
対処方法:URLの一括置換
■SQLで直接置換(慎重に)
UPDATE wp_options SET option_value = replace(option_value, 'http://localhost', 'https://example.com');
UPDATE wp_posts SET guid = replace(guid, 'http://localhost', 'https://example.com');
UPDATE wp_posts SET post_content = replace(post_content, 'http://localhost', 'https://example.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://localhost', 'https://example.com');
■Better Search Replace プラグインを使用(安全)
6 誤って記事や固定ページを削除してしまった
ゴミ箱からも削除してしまい、完全に記事が消えた
対処方法
DBの自動バックアップがあるか確認(Xserverやプラグイン)
DBが残っていれば、wp_posts テーブルから該当記事のデータを復旧可能(post_status = 'trash' ではないか確認)
7 wp-config.phpの書き換えミスでエラー
wp-config.phpに余計なスペースや改行、文字列を入れてしまい「headers already sent」や「データベース接続エラー」に
対処方法
FTPで wp-config.php をダウンロード
BOMなしのUTF-8で開き、余計な空白・改行がないかチェック(特に の後)
サーバー情報(DB名、DBユーザー、パスワード)が間違っていないか確認