
このブログ、4年前に作ってから、PHPが7.4のままだった。2022年にサポートが終わったバージョンだ。
気づいたきっかけは、2026年10月のphp2shell騒ぎ。そのときの話は別の記事に書いた。(参照:https://sneakyblog.com/php2shell-conoha-wing/)
で、いざPHPを上げようとしたら、「先にPHPを上げたらWordPressが壊れるかも」「上げたら全ページに警告が出た」と、ちょいちょいハマった。
ということで今回は、ConoHa WINGでWordPressのPHPを上げる手順を、俺が実際にやった順番で書く。
どうも、スニーキーです。
結論:この順番でやれば壊れない

- 自動バックアップがあるか確認する
- 今のPHPとWordPressのバージョンを確認する
- WordPress本体 → プラグイン → テーマを先に更新する
- ConoHaでPHPを切り替える
- 全ページを見て、警告が出たら直す
一番大事なのは3。PHPより先にWordPressを上げる。理由はこの下で説明する。
今のPHPのバージョンを確認する

WordPressの管理画面だけで確認できる。
「ツール」→「サイトヘルス」→「情報」タブ →「サーバー」を開くと、「PHP バージョン」が書いてある。俺のは 7.4.33 だった。
ちなみにConoHa WINGは、脆弱性が出たときにバージョン番号を変えずにパッチを当てることがある。php2shellのときもそうで、サイトヘルスに出る番号は前と同じだった。(参照:https://www.conoha.jp/wing/news/?ap=2015054909)
なので「番号が古い=穴が開いている」とは限らない。ただ、7.4自体はもうサポートが終わっているので、上げたほうがいいのは変わらない。
なぜWordPressを先に上げるのか

WordPress公式の対応表を見ると、WordPress 6.0はPHP 8.2に対応していない。逆に、WordPress 7.1はPHP 7.4でも動く。(参照:https://make.wordpress.org/core/handbook/references/php-compatibility-and-wordpress-versions/)
つまり、新しいWordPressは古いPHPでも動くけど、古いWordPressは新しいPHPで動かないことがある。だから順番は「WordPressが先、PHPが後」。
俺のWordPressは6.0.2だったので、先にPHPを上げていたら危なかったと思う。
自動バックアップを確認する

ConoHa WINGの「サーバー管理」→「自動バックアップ」を開く。俺のところには直近4日分があって、Web・メール・データベース全部「リストア可」になっていた。
壊れてもここから戻せる。これを見てから作業すると、気持ちがかなり楽になる。
WordPress本体・プラグイン・テーマを先に更新する

俺は、プラグインをいったん全部止めてから、WordPressを6.0.2から7.1.3に一気に上げた。WordPress公式の文書にも「バックアップがあれば、古い版から最新版まで一度に上げられる」とある。(参照:https://developer.wordpress.org/advanced-administration/upgrade/upgrading/)
そのあと、古かったプラグインを更新して、1つずつ有効に戻した。1つ戻すたびに、トップページと記事ページが表示されるか確認した。こうしておくと、もし壊れても犯人がすぐ分かる。
テーマのAFFINGER6も、最終版(20260520)に上げた。変更履歴に「PHP8.2への対応」が入っていた。俺はこれを後回しにしたせいで、あとで痛い目を見た笑
ちなみにここまでで、だいたい20分くらいだった。
ConoHaでPHPを切り替える

ConoHa WINGの「サイト管理」→「サイト設定」→「応用設定」を開くと、「PHPバージョン(ドメイン個別)」という欄がある。右の鉛筆マークから、ドメインごとにPHPのバージョンを選べる。(参照:https://support.conoha.jp/w/configphp/)
サーバー全体の設定とは別に、ドメインごとに決められるので、ブログを複数持っている人は1つずつ試せる。
8.3にした理由

選択肢には8.4や8.5もあった。それでも俺が8.3にしたのは、使っているテーマ(AFFINGER6の最終版)の動作環境がPHP 8.3までだったからだ。
PHP公式のサポート期限はこう。(参照:https://www.php.net/supported-versions.php)
- 8.2:2026年12月31日まで(もうすぐ終わる)
- 8.3:2027年12月31日まで
- 8.4:2028年12月31日まで
8.2を選ぶと2か月でまた上げることになるので、8.3にした。テーマやプラグインが対応しているなら、8.4以上でもいいと思う。
警告が出た:全ページの上にWarning

PHPを8.3に切り替えて、トップページを開いたら、全ページの一番上にWarningが3行出ていた。
原因は、更新前の古いAFFINGERのコード。PHP 7.4では黙っていた書き方に、PHP 8から警告が出るようになったらしい。しかもログインしていない読者にも見えていて、サーバーのフォルダの場所まで表示されていた。これはさすがにヤバいと思った。
直し方は2つ。
1. 警告を画面に出さない(すぐやる)
ConoHaの同じ画面にある「user.ini編集」に、この1行を足した↓
display_errors = Off
PHP公式のマニュアルにも、display_errorsは「本番環境では使ってはいけない」と書いてある。(参照:https://www.php.net/manual/en/errorfunc.configuration.php)
これで警告は画面から消えた。
2. 原因を直す(あとでやる)
警告を隠すだけじゃ気持ち悪いので、テーマを最新版に上げた。これで警告の原因そのものが消えた。
俺の記録だと、PHPを切り替えてから警告を消すまで約1時間、テーマを上げ終わるまでさらに30分くらいかかった。半分は焦って調べていた時間だ笑 テーマを先に上げていれば、この1時間半はいらなかったと思う。
うまくいかないときの戻し方

- 全ページにWarning → user.iniに
display_errors = Off、そのあとテーマ・プラグインを更新 - 「重大なエラー」で真っ白 → ConoHaでPHPを元のバージョンに戻す
- 管理画面にログインできない → 同じくPHPを戻す。ConoHaの画面から操作できるので、WordPressに入れなくても大丈夫
- 戻しても直らない → 自動バックアップからWebとデータベースを復元
PHPの切り替えは、ConoHaの画面からいつでも戻せる。焦ったら、まずPHPを戻すのが一番早い。
ちなみに、php2shell騒ぎの日はConoHaの管理画面自体がエラーで開けない時間があった。急いでいるときほど、こういうこともあるので、時間に余裕があるときにやったほうがいい。
まとめ
- バックアップを確認する
- WordPress・プラグイン・テーマを先に上げる
- ConoHaでPHPを切り替えて、全ページを確認する
- 警告が出たら
display_errors = Offで隠して、テーマを更新して直す - 困ったらPHPを戻す
俺の場合、一番の失敗は「テーマを後回しにしたこと」だった。テーマもWordPressと同じタイミングで上げておけば、警告に焦ることもなかったと思う。
PHP 8.2を使っている人も、2026年12月31日でサポートが終わるので、年内に8.3以上に上げておくのがいいと思う。
次は、ConoHaの自動バックアップから本当に復元できるのか、試してみたい。
誰かの助けになれば嬉しい。