現在、WordPressの最新版は5.0.2ですが、まだ4.9系で動作しているサイトも多いはず。その中で、自動アップデートをOFFにしていることも多々あるかと思います。
そんなサイトの場合、4.9系最新版4.9.9は自動アップデートすることができません。(管理画面上では5.0系へのアップデート案内しか表示されないため)
セキュリティ上、アップデートしないのはマズイので、少々面倒ですが手動更新します。
手動更新の手順
バックアップを取得する
サイトのファイルとDBのバックアップを取得します。
アップデート失敗やアップデート後の不具合に対処するためです。
最新版のWordPressをダウンロードする
本家または日本語版のWordPress最新版をダウンロードして解凍します。
メンテナンス状態にする
更新中のアクセスを避けるため、メンテナンス状態にします。
以下の方法以外にもWordPressのプラグインを利用する方法もあります。
.htaccessを使用する
メンテナンスページ(例:maintenance.html)を用意して、自分のアクセス(IPアドレス・例:192.168.1.3)以外を503エラーでメンテナンスページへ飛ばすようにします。
以下、.htaccessに記載します。
ErrorDocument 503 /maintenance.html
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !=/maintenance.html
RewriteCond %{REMOTE_ADDR} !=192.168.1.3
RewriteRule ^.*$ - [R=503,L]
</IfModule>
※メンテナンスページに、画像(内部参照リンク)を載せたい場合には除外設定を追記します。
function.phpに書き込む
WordPressの機能を利用してメンテナンスページを表示します。
function my_maintenance_mode() {
if ( !current_user_can( 'edit_themes' ) || !is_user_logged_in() ) {
wp_die('<h1>ただいまメンテナンス中です。</h1><p>誠に申し訳ございませんが、お時間を空けて再度アクセスをお願いいたします。</p>');
}
}
add_action('get_header', 'my_maintenance_mode');
プラグインを停止する
プラグインを停止することが公式では推奨されております。
ディレクトリ&ファイルを更新する
現行サイトのwp-includes
ディレクトリとwp-admin
ディレクトリを削除して新たにアップロードします。(もし、編集しているファイルや作成したファイルがある場合は残す=なので、上書きのほうがいいかも?)
wp-content
ディレクトリを上書きします。(といっても、要らないプラグインやテーマが蘇ってしまうので、wp-content/languages
ディレクトリのみ上書きすればOK)
その他のファイル(WordPressのroot上にあるファイル)を上書きします。(ただし、こちらも編集しているファイルがある場合には、残すなりマージするなり注意しましょう)
wp-config-sample.phpを確認する
マイナーアップデートの場合にはあまりありませんが、メジャーアップデートの場合には、wp-config.php
に追加するべき新機能がある場合がありますので、wp-config-sample.php
を確認の上、必要に応じてwp-config.php
に追記します。
データベースを更新する
管理ページにログインして、データベースの更新が必要な場合には、案内が表示されるので内容に従って実行します。
最後に
停止したプラグインを再度実行して、メンテナンス状態を解除すれば作業完了です。
マイナーアップデートの場合には、トラブルが起きることは少ないですが、メジャーアップデートの場合、プラグインやテーマの互換性問題、パーマリンク設定の再実行など大なり小なりトラブルが起きることがあります。
そのため、最初のバックアップ取得は忘れずに実行しましょう。