WordPress 2.6 にアップデート
2008年07月16日 02:01
たったいま 2.6 へのアップデートが完了しました。今回はリモートからのブックマークレットによる投稿をサポートしたとか、テーマのプレビューがついたとか(これは wordpress.com には既にありました)、管理者エリアへの SSL 接続をサポートしたとか、幾つかの変更点があります。
詳しくは・・・えー WordPress のサイトってリリースノートがダウンロードページになくて、結局はこのあたりを見てないとわからんということなのですが、冒頭でご紹介した点の他にも、Google Gears をサポートしたとか、マイクロブログみたいな Word Statistics がついたとか(マルチバイト環境では正しく動作してないですね)、設定ファイルの wp-config.php を別の場所に置けるようになったとか、色々あります。いまのところ本家版ではおかしな挙動はありません。例の、Visual エディタで JavaScript の挙動がおかしいとかいった問題も起きていないですね。
あと、それほど気にしてなかったのですが、テキストを選択してリンクボタンを押して出てくる、小さなポップアップ・ウィンドウにて、”http://” の入力部分にフォーカスされていなかったのが直ってるのは、ちょっと嬉しい(笑。これ、毎回フォーカスを当てて “http://” を消してから URL をペーストしてたのでした。(なぜか他のサイトでは問題なくて、MD の管理画面にだけ生じていたのです)。

こんにちは。
アップデートのやり方を記載していただければありがたいです。
投稿:kawakami / 2008-07-16 at 2008-07-16 17:17
@kawakami さん、こんばんは。
僕の場合、1) プラグインを全て無効にする、2) アップデートの必要があるディレクトリを、
/wp-admin2
/wp-includes2
という名前でアップロードします。ルートにある wp-config.php や index.php などは、特に変更がなければそのままなのですが、いつも /wp-root というフォルダを「ローカルに」作ってダウンロードしておきます。
以上で、アップグレードした後におかしな挙動があっても、すぐに戻せます。ただ・・・データベースを更新するので、元に戻してどうなのかは、実際にはわかりません(幸いにしてそういう機会がなかったので)。
これだけ準備したあとで、まず現行の /wp-admin を /wp-admin-old にリネーム。/wp-includes を /wp-includes-old にリネーム。次にさきほどアップロードした /wp-admin2, /wp-includes2 から「2」を外します。それから、サイトのルートで、.htaccess と wp-config.php を除く全てのファイルを削除して、新しいファイルをアップロードします(他にも残しておくファイルは幾つかありますが、WP とは関係ないのでそのままです)。
これで、置き換え自体は完了なので、/wp-admin/install.php にアクセスして下さい。たぶん「既にインストールされてるってば」という表示が出るので、/index.php にアクセスすると、データベースのアップデートなどの画面が出てきます。そのままやってうまくいけば、ひとまず完了です。プラグインを一つずつアクティブにしてみて、問題なければOK。
アップグレードに問題があったら、ルートのファイルをバックアップしていたものに戻したり、/wp-admin-old などのリネームしたディレクトリを元に戻したりといった作業をします。
ひとまず全て完了したら、/wp-admin/install.php などインストールに関連するファイルを削除しておくなどして、終わりといったところです。コメントのフォームなどについては、FFx2.x のアドインとして使えていた、XSSme のようなものを使って、一通りチェックします。まぁ、script タグなんかがストレートに動いたら論外ですが・・・それから、記事を書いてみたりプラグインを使ってみたりして、特に何も問題がなさそうなら、サーバに残っている /wp-admin-old などをダウンロードした上で削除します。
こんなところでどうでしょうか。今回のアップグレードから WP 自体のアップグレードも自動になるらしいので、もうこういう方法もなくなるのかもしれませんね。ちなみに、上にでご紹介したやり方の所要時間は18分でした。うちは 50Mbps の契約で3Mbps しか出ないので(笑。商用のサイトだったら、数日前にアナウンスして1時間くらいのダウンを見込んでおいた方が無難かと思います。
WP のドキュメントでは、「いったんサーバから全部消して、新しいファイルをアップロードしよう」と書かれていますが、上りの回線が遅い環境だとそれなりに時間がかかってしまうので、/wp-content は残しています。それから、アップロードするときにいちばん時間を食うのは TinyMCE のファイルなので、これが原因でトラブルが起きると厄介です。
・・・と、いつもはこういう脳天気な手順でやっているのですが、商用サイトの場合は、あらかじめユーザ定義関数に変更がないかどうかを調べておいて、既存のテーマがそのまま使えるかどうかを確認してから作業する方が無難です。。
投稿:philsci / 2008-07-16 at 2008-07-16 21:49
大変丁寧なご回答ありがとうございました。
おかげですっかり分かりました。
感謝です!!
投稿:kawakami / 2008-07-17 at 2008-07-17 22:04
@kawakami さん、こんばんは。参考になったようで、なによりです。
本日は会社の WordPress をアップデートしましたが、別の環境でも問題はないようです。
(PHP 5.2.6/DSO版、デフォルトエンコード EUC-JP、MySQL 4.0.1)
投稿:philsci / 2008-07-17 at 2008-07-17 23:33
philsciさま。こんにちは。
投稿記事そのものからは一カ月ほど時間が経ってしまっていますが、
kawakamiさんに続いて、アップデートに関しての質問です。
WordPress2.5.1から2.6へアップデートしようと考えているのですが、
前回のアップデートから時間が経っていて、どうもやり方が思い出せません。
解凍したWordPress2.6のファイルを見てみたら、
wp-admin
wp-content
wp-includes
index
…(省略)
xmlrpc
とあったのですが、
philsciさまのやり方を見ていたら、
「wp-admin」と「wp-includes」のアップロードに関しては、
名前をそれぞれ変更してアップロードすると分かったのですが、
それ以外の、「wp-content」や「index…(省略)xmlrpc」などのファイル・フォルダを
どうアップロードなどしているか、分かりませんでした。
初学者のつぶやきで、お答えいただきのもおこがましいかも知れませんが、
御返答いただけると、嬉しいです。
投稿:kyurukyuru / 2008-08-16 at 2008-08-16 11:18
初めまして,真面目にWordPressブログに取り組んでいるものです。
WordPress2.5から使い出したので,まだ一回もバージョンアップしていません。
というよりか,どうして良いかわからないまま,更新重視で書き続けています。
1つ教えてください。
上記のご説明でわからないことがあります。
>アップデートの必要があるディレクトリを、
>/wp-admin2
>/wp-includes2
>という名前でアップロード
するとありますが,この違いは何でしょう?
wp-admin2には,公式サイトからダウンロードされるファイルの全て
wp-includes2には,今まで使ってきたwp-includesフォルダすべてを置いておく?
という意味なのでしょうか。
何分,意味がわからず初心者同然なので,ご説明いただくと助かります。
宜しくお願い致します。
投稿:仲居 一平 / 2008-08-28 at 2008-08-28 21:29
まず、お二人とも、返事が遅れて申し訳ありませんでした。
@kyurukyuru さん
僕の場合、wp-content にはプラグインやテーマが入っているので、そのままにしてあります。
もしプラグインでアップデートを要するものがあれば、WP 2.6+ ではオンラインでプラグインを
アップデートできるようになっているからです。
ただし、サーバ側で圧縮・解凍のモジュールが PHP にロードされている必要があります。
それから FTP 情報を WP に登録するので、必ずしもセキュアな運営方法ではありません。
テーマについては、アップデートする前に default/classic のテーマに戻しておいてから、そのまま
使ってみて問題がないかどうかを(Pages, Archive など何種類かのページを表示してみて)確認
します。後方互換性を気にしなくてはならないようなテンプレートを書いている場合は、ChangeLog
で見捨てられた関数がないかどうかをご確認いただく方がよいと思います。
だからこそ、ChangeLog はダウンロードページからリンクを張ってほしいんですよね・・・・
@仲居さん
新しいバージョンの /wp-admin を /wp-admin2 としてアップロードする理由は、今使っている /wp-admin を直接上書きしないためです。
・新しいディレクトリを /wp-admin2 としてアップロード
・現行ディレクトリを /wp-admin1 などとしてリネーム(リモートで)
・/wp-admin2 を /wp-admin にリネーム
こうすると、挙動がおかしいときに /wp-admin を /wp-admin2 に戻して、/wp-admin1 を /wp-admin に戻せば、すぐに元通りになります。古いディレクトリを上書きしたり、消してしまうとリカバリーに時間がかかるというのが理由です。
データベースについても、アップデート前に phpMyAdmin などで SQL 形式でダウンロードしておき、アップデートが始まると DB はすぐ元には戻せないので、何かあれば「データベースそのものを消してデータを入れ直す」くらいの手順を確認しておけば、データさえ手元にあれば安心ですね。
以上です。
投稿:philsci / 2008-08-30 at 2008-08-30 22:08
あと、wp-config.php, index.php といったブログのホームディレクトリ(先頭)にあるファイルですが、参考までに書いておきますね。
/.htaccess … サーバによっては必要です。(PHP のエンコードを強制する場合など)
/index.php … そのまま
/license.txt … アップロードしません
/readme.html … アップロードしません
/wp-app.php … 上書き
/wp-atom.php … 上書き
/wp-blog-header.php … 上書き
/wp-comments-post.php … 上書き(コメントを使っていない場合は、絶対にアップロードしないこと)
/wp-commentsrss2.php … 上書き(こちらも不要な場合はアップロードしません)
/wp-config.php … /wp-config-sample.php の内容を確認して決める
/wp-cron.php … 上書き
/wp-feed.php … 上書き
/wp-links-opml.php … 上書き
/wp-load.php … 上書き
/wp-login.php … 上書き
/wp-mail.php … 上書き(メール通知を使っていない場合はアップロードしません)
/wp-pass.php … 上書き
/wp-rdf.php … 上書き
/wp-register.php … 上書き
/wp-rss.php … 上書き
/wp-rss2.php … 上書き
/wp-settings.php … 上書き
/wp-trackback.php … サイトによって異なる(たいていはトラックバックを使っていないのでアップロードしていません)
/xmlrpc.php … 上書き
投稿:philsci / 2008-08-31 at 2008-08-31 00:16
ご丁寧なご回答,誠に有り難うございます。
早速試してみます。
また,上手く行けばご連絡させていただきます。
・・・これでバグを気にせず,画像アップロードできそうです。
投稿:仲居 一平 / 2008-08-31 at 2008-08-31 23:50