WordPress の自動アップグレードのステップ

注意!! この投稿は3年と3ヶ月くらい前に公開したものです。そのため、最新版の WordPress では正常に動作しないかもしれないのでご注意ください。

「自動アップグレードが怖い!」:-) という方がいたので、http://core.trac.wordpress.org/ticket/5560#comment:60 より WordPress の自動アップグレードのステップについてご紹介。

アップグレード中に実行されるステップ。

  • バージョンとロケール情報を http://api.wordpress.org/core/version-check/1.2/ に送り、アップデートがあるか確認。あれば WP パッケージへのリンクを取得。リクエストしたロケール用のパッケージがあればそれを利用し、なければ英語版が利用される。wp.org 上にローカルサイトを持つロケールのみパッケージを利用できる
  • wordpress.org よりシステムの一時ディレクトリにパッケージをダウンロード
  • 作業ディレクトリ、通常は wp-content/upgrade/core を作成
  • パッケージを作業ディレクトリに展開
  • 作業ディレクトリに展開された新しいバージョンの wp-admin/includes/update-core.php を使用中の WordPress にコピー
  • 新しい update-core.php をインクルードする
  • update-core.php で定義されている update_core() を呼び出す

update_core() が引継ぎ、以下を実行:

  • 作業ディレクトリにある新しいバージョンの WordPress の整合性・正当性を検査(Sanity check)
  • WP のルートディレクトリに .maintenance ファイルを作成。wp-settings.php がこれをチェックし、このファイルがあれば WP を読み込まないようにする。ファイルのアップグレード中に WP  を読み込まないようにするため
  • 古い WP ファイルを新しい WP ファイルで上書き
  • WP に含まれなくなった必要の無いファイルを削除
  • データベースのアップグレードを実行するためにリクエストを ugrade.php に送る。新しいファイルをすべて読み込んだ新しいリクエストが必要なので、アップグレード関数を直接呼び出すのではなく別のリクエストとして実行する
  • 作業ディレクトリを削除
  • .maintenance ファイルを削除
  • おわり

関連投稿:

  1. Maintenance Mode
  2. WordPress Version Check
  3. WordPress Upgrade Preflight Check
  4. Update Manager
  5. Site Unavailable

WordPress の自動アップグレードのステップ” へのコメント

  1. ピンバック: WordPress の自動アップグレード手順。 | btmup Blog

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>