WordPressの手動更新バージョンのアップデート方法(重大エラーからの復旧) 2022.10.03WordPressの手動更新バージョンのアップデート方法(重大エラーからの復旧) WordPressは、世界で最も使われているCMSである一方、その柔軟性と互換性の問題から、アップデート時に「重大なエラー」や「管理画面ログイン不可」といったトラブルが発生しやすい側面も持ちます。特に、サーバー側の PHPバージョンアップ(例: PHP 7.4からPHP 8.1/8.2への移行)は、古いテーマやプラグインとの互換性を完全に破壊し、サイトを停止させる主要な原因となります。本コラムでは、WordPressを安全に最新の状態に保つための標準的な方法から、管理画面にアクセスできなくなった際の手動リカバリー(FTP/SFTP必須)まで、具体的な手順と対処法を詳細に解説します。目次1 1. アップデートが必要な理由とリスク1.1 1. アップデートの主要な目的1.2 2. PHPバージョンアップによる重大リスク2 2. 標準的な自動/管理画面経由のアップデート2.1 1. データベースが原因のトラブル対策2.2 2. バックアップとプラグインの無効化(事前準備)3 3. 【リカバリー手順】管理画面にログインできない場合の手動更新3.1 1. 手動更新の準備3.2 2. WordPressコアファイルの手動更新(FTP/SFTP)3.3 3. アップグレードの完了と再起動4 4. PHPバージョンアップのトラブルシューティングと対策4.1 1. 常に段階的なアップデートを行う4.2 2. 古い/互換性のないプラグインの特定と対応5 5. 安定運用に向けた最終チェックリスト1. アップデートが必要な理由とリスク 1. アップデートの主要な目的 目的詳細セキュリティ強化過去のバージョンで発見された**脆弱性(セキュリティホール)**を修正します。更新しないことは、サイバー攻撃に対する無防備な状態を意味します。PHP互換性の確保WordPress本体は最新のPHPバージョン(8.x系)に対応していますが、古いバージョンは新しいPHPで動作しません。互換性のために定期的な更新が必須です。新機能とパフォーマンス向上新しいブロックエディタの機能、REST APIの強化、画像の遅延ロードなど、パフォーマンスと利便性の向上が図られます。2. PHPバージョンアップによる重大リスク 特にPHP 8.x系へのアップグレードは、サイト停止のリスクが伴います。Deprecated (非推奨) 関数の廃止: PHP 7.x以前で使われていた機能がPHP 8.xで削除された場合、その古い関数を使っているテーマやプラグインは起動できず、**Fatal Error(致命的なエラー)**を引き起こします。Syntax Error (構文エラー): PHP 8.xで新しい構文が導入された結果、古いPHPで書かれたコードの一部が文法違反と見なされ、Parse Error(解析エラー)でサイト全体が起動できなくなります。2. 標準的な自動/管理画面経由のアップデート 通常、WordPressは管理画面の「ダッシュボード」からワンクリックでアップデートが可能です。1. データベースが原因のトラブル対策 WordPressのメジャーアップデート後、データベース構造の変更が必要になる場合があります。処理: ファイルの更新後、wp-admin にアクセスすると「WordPressデータベースの更新が必要です」という画面が表示されます。指示に従い「WordPressデータベースを更新」ボタンを押します。注意: この画面が表示されたら、必ず実行してください。これを無視すると、新しいバージョンとデータベースの情報に不整合が生じ、予期せぬエラーやデータ表示の不具合が発生します。2. バックアップとプラグインの無効化(事前準備) 安全なアップデートのために、管理画面にアクセスできる場合も以下の手順を踏むことが推奨されます。バックアップの取得: アップグレード前に、データベースとサーバー上のファイル(特に wp-content)のバックアップを必ず取得しておきます。プラグインの無効化: 管理画面からすべてのプラグインを無効化します。後で元に戻すため、元々有効だったプラグインをメモしておいてください。3. 【リカバリー手順】管理画面にログインできない場合の手動更新 PHPバージョンアップ後の致命的なエラーなどにより、管理画面にログインできず、通常のアップデートが不可能な場合、FTP/SFTPを使用して手動でファイルを置き換える必要があります。1. 手動更新の準備 準備項目内容バックアップの取得サーバー上の全ファイルとデータベースのバックアップを必ず取得してください。WordPressのダウンロードアップグレードするバージョンのWordPress(最新版を推奨)の日本語版ZIPファイルを公式サイトからダウンロードし、ローカルで展開しておきます。原因プラグインの無効化以前のエラーログに基づき、問題の原因となっているプラグイン(例: wp-social-bookmarking-light など)のフォルダ名をFTPで一時的に変更し、エラーを停止させます。(例: /wp-content/plugins/old-plugin → /wp-content/plugins/old-plugin_OFF)2. WordPressコアファイルの手動更新(FTP/SFTP) この手順は、WordPressのコアファイルのみを置き換え、ユーザーコンテンツや設定ファイルを保持するための重要な作業です。手順操作内容保持するファイル/フォルダ4. ファイルの削除以下のフォルダ・ファイル以外の古いWordPressファイルを削除します。wp-content、wp-config.php、.htaccess (存在する場合)5. 新ファイルのアップロードダウンロードした新しいWordPressのうち、以下のファイル・フォルダを除くすべてをサーバーのルートディレクトリにアップロードし、上書きします。wp-content、wp-config-sample.php6. 言語ファイルの更新アップロード後、新しいWordPressの wp-content フォルダ内の languages フォルダ全体をサーバーの wp-content にアップロードし、上書きします。3. アップグレードの完了と再起動 データベースのアップグレード: ファイルのアップロード後、ブラウザでサイトの /wp-admin(例: https://forest.la/wp-admin)にアクセスします。データベースの更新画面が表示されたら、指示に従って実行します。プラグインの再有効化: 管理画面の「プラグイン」で、手順1で無効化したプラグインを有効に戻します。4. PHPバージョンアップのトラブルシューティングと対策 PHPバージョンの更新は、多くのサイトで「重大なエラー」の原因となります。これを回避し、安全に対応するための手順です。1. 常に段階的なアップデートを行う PHPのメジャーバージョン(例: 7.4 → 8.1)を一度に飛ばさず、テスト環境で段階的にテストすることが理想です。対策内容PHPバージョンの確認サーバー側で、サイトが動作しているPHPバージョンが現在使用しているWordPressおよびプラグインの要件を満たしているか確認します。wp-config.php のデバッグサイトが停止した場合、wp-config.php に define( 'WP_DEBUG', true ); を設定し、debug.log ファイルで**致命的なエラー(Fatal Error)**の原因となっているファイルと行番号を特定します。テーマの確認エラーがプラグインをすべて停止しても続く場合、原因はテーマの functions.php にあります(例: Call to undefined function)。この場合はFTPでテーマ名を変更し、デフォルトテーマに強制的に切り替えて原因を切り分けます。2. 古い/互換性のないプラグインの特定と対応 エラーログで特定のプラグインが原因と判明した場合の対応です。無効化: FTPで該当プラグインのフォルダ名を変更し、無効化します。代替策の検討: そのプラグインがPHP 8.xに対応しない場合、機能が重複しない代替プラグインを探し、導入します。開発者への連絡: サイトの機能に必須の場合は、プラグインの開発元にPHP 8.xへの対応予定について問い合わせることも検討します。5. 安定運用に向けた最終チェックリスト アップデートと復旧作業が完了したら、以下の最終チェックを行い、サイトの安定性を確保します。サイト表示確認: トップページ、主要な投稿、固定ページがすべて正常に表示されるか。全機能テスト: お問い合わせフォーム、EC機能、会員ログイン、検索機能など、主要な機能が動作するか。管理画面の速度: 管理画面の読み込み速度や操作が遅延していないか。セキュリティ: サイトのセキュリティプラグイン(AIOSなど)が正常に動作し、ファイアウォールやログイン制限が有効になっているか。キャッシュのクリア: サーバーキャッシュ、CDNキャッシュ、プラグインキャッシュをすべて完全にクリアし、すべての訪問者に最新のサイトが表示されるようにします。 前の記事へ 次の記事へ