自動アップデートができない!WordPress3.3から5.8へ手動アップデート
WordPressの人気の機能一つに、運用の担当者が非常に助かる「自動アップデート機能」があると思います。
この自動アップデート機能により、セキュリティの強化や新機能の拡充など様々なメリットを享受できるわけですが、サーバー環境やその他の理由によってアップデートが進んでいないケースもあります。
今回はWordPress3.3から現行最新版の5.8.2へのアップデートを行ったケースを紹介したいと思います。
目次
手動アップデートすることになった理由
結論から言うと、現行最新版のWordPress5.8.2はPHP5.6.20以降を必要とするため、自動更新(アップデート)が実行できず手動でのアップデート作業が必要でした。
PHP5.6.20以降が必要要件であれば、サーバーのコントロールパネルから最新ないし要件を満たすPHPバージョンに切り替えることで解決しそうですが、コントロールパネルからPHP5.6(PHP5.6.40)に切り替えると、稼働中のWordPress3.3そのものが動作しなくなります。
WordPress3.3そのものが動作しなくなるということは、もちろん自動アップデートもできないわけです。
現状の環境説明
- レンタルサーバー:さくらインターネット
- WordPressバージョン:3.3
- PHPバージョン:5.2.17
- MySQLバージョン:5.5
アップデートの予定手順
- バックアップをとる
- WordPress4.0.1へ手動アップデート
- データベース更新
- WordPress4.9.18へ手動アップデート
- データベース更新
- PHPのバージョンを5.6(PHP5.6.40)に切り替え
- WordPress5.8.2へ自動アップデート
- PHPを最新版に切り替え
- MySQL5.7へ移行
予定では大筋このような流れで可能だと思います。
今回は3.3から一気にアップデートするのはリスクが大きいと感じたため、4.0.1と4.9.18を挟んでから5.8.2へのアップデートを行います。
実際行ったアップデート作業
バックアップ
自動アップデートだろうが手動アップデートだろうが、何はともあれバックアップからです。
何か予期しないトラブルが発生しても復旧さえできればという安心感は必要です。
データベース、ファイルともに必ずバックアップしておきましょう。備えあれば患いなし。
WordPress4.0.1をダウンロード
WordPressのリリースアーカイブから、WordPress4.0.1コアファイルをダウンロードします。
4.0.1はリリース日が2014/12/15なので、現状のPHP5.2.17(リリース日2011/01/06)では問題なく稼働すると予想。
プラグインを全て停止させる
念のためプラグインを一旦全て停止させます。
WordPress4.0.1を手動インストール
- .htaccess
- wp-config.php
- /wp-content/
上記を除くファイルを全てアップロードします。
また、
- /wp-content/languages/
もアップロードします。
データベースを更新する
ブラウザでWordpressの管理画面にアクセスします。
「データベースを更新する」画面が開かれますので、ボタンをクリックしてデータベースを更新します。
動作確認
WordPressが正常に動作しているか確認します。
無事に動作確認ができたら、ここまでがバージョンアップの一連の流れになりますので、希望のバージョン(今回での例ではWordPress4.9.18)になるまで繰り返します。
PHPのバージョンを5.6(PHP5.6.40)に切り替え
WordPressのコアファイルをアップデートしたことで、 PHP5.6.40で動作するようになりました。
WordPress4.9.18はPHPバージョン5.2.4 – 7.2が動作環境となっていますので、残念ながらPHP7.4まではあげることができません。
WordPress5.8.2への自動アップデート
PHP5.6.40にあげたことで5.8.2への自動アップデートも利用できるようになりました。
アップデート自体は自動ですが、予期しないエラーや不具合に備えて、もちろん気は抜かずバックアップは再度とっておきましょう。
問題なくアップデートが完了すればもう一息。
PHPの最新バージョンへの切り替え
WordPress5.8.2の推奨環境は以下としています。
PHP バージョン 7.4 以上。
MySQL バージョン 5.6 以上、または MariaDB バージョン 10.1 以上
そのため、PHP7.4以上となっていますが、5.6.20 – 8.0が要件となっているようですので、さくらインターネットで現状最新版となっているPHPバージョン8.0に切り替えようと思いましたが、PHP8.0.12ではどうやら動作エラーとなるようでしたので、PHP7.4.25に変更します。
プラグインを更新&有効化&動作確認
全て停止させていたプラグインを更新して有効化しなおして、すべての動作を確認したら3.3→5.8.2のバージョンアップが完了です。
データベースのアップグレード
WordPress5.8.2の推奨環境がMySQL バージョン 5.6 以上となっているので、MySQLを5.7にアップグレードします。
サーバーによりますが、MySQLのバージョンをあげると、wp-config.phpに書かれているホスト名やDB名・パスワードなどが変更になるケースが多いので、その際は必要に応じてwp-config.phpを変更しましょう。
どの値に変更したら良いかは各サーバーのマニュアル等で案内されているかと思います。
おまけに馴染みの旧式エディタプラグインを導入
3.3からのアップデートの場合、旧式エディタの方が馴染みがあると思いますので、Classic Editorプラグインと、エディタ拡張が可能なAdvanced Editor Tools (旧名 TinyMCE Advanced)プラグインを導入します。
まとめ:適切なアップデートとシステムメンテナンスを。
今回はWordPress3.3からWordPress5.8.2へのアップデート方法をご紹介しました。
プラグインにテーマファイルにコアファイルと、WordPressを利用している方ならアップデートの通知は幾度となく見てきていると思いますが、全ての通知に対して毎回バックアップとアップデートをするのは楽な作業ではありません。
ただし、内容によっては、緊急性の高い重大なセキュリティ上の脆弱性へのアップデートだったりすることもあるので、適切な頻度でアップデートをして安全で快適なWordPress環境を目指しましょう。
「WordPressを使っているけどシステム担当者がいない」などの場合は、バックアップとアップデートの作業もままならないケースも少なくないと思いますので、その際は専門家に保守に入ってもらうなどすると安心かと思います。