WordPress MU 2.8.1 から 2.8.4a へのアップグレード(トラブル&対処編)

先日 WordPress を 2.8.4 にバージョンアップをしましたが、授業ブログで使っている WordPress MU (multi-user; μ) の方も 2.8.1 から最新の 2.8.4a へのアップを試みました。ところがボタン1つをクリックするだけが売りの自動アップグレードがうまくいきません。具体的には、アップグレード作業の途中で何かのファイルがコピーできなかったといったエラーメッセージが出てしまいました。

WP MU 公式サイトのフォーラムを確認したところ、どうやら原因は 2.8.1 に含まれるファイルの記述ミスのようです(実際の議論はこちらの英語ページをご覧ください;あわせて同内容のこちらの開発者ブログも紹介します)。フォーラム内に出てくる対処法を試してみたところ、一発で問題が解決したので、問題点を見つけ出し、対応策を考えだしてくれた先人に感謝しつつ、以下簡単に紹介します。

  1. /wp-admin/includes/ ディレクトリ内にある class-wp-upgrader.php というファイルをダウンロードして、テキストエディタで開く。
  2. (たぶん)697 行目にある次の記述を見つける(テキストエディタで検索すればすぐに見つかります)。
    if ( !$wp_filesystem->copy($working_dir . ‘/wordpress/wp-admin/includes/update-core.php’, $wp_dir . ‘wp-admin/includes/update-core.php’, true) ) {
  3. 行内の “/wordpress/” というディレクトリ名(赤字の部分)を “/wordpress-mu/” に変更する。
  4. 保存したファイルをアップロードして置き換える。
  5. ダッシュボードで自動アップグレードボタンをクリック。

上記の修正を行わず、いわゆるマニュアル・アップグレード(新バージョンのファイルを全てアップロードした上での更新作業)を行えば問題なく対応できるそうですが、2.7 以降の WordPress (含 MU) の良さのひとつは自動アップグレードなわけですから、ファイル1つをちょっと修正するだけでなんとななったのはありがたかったです。

Google で調べてみても日本語の情報はまだほとんど見られなかったので、こちらで紹介させてもらいました。何かの役に立てば幸いです。

WordPress を 2.8.4 にアップ

新しいバージョンが出たので例によってボタン一つで更新しました。ここに書くのを忘れましたが、この間に一度 2.8.3 にアップグレードもしてました。

念のためデータのバックアップを取った後で、ボタンひとつクリックするだけなので楽ちん。それにしても最近マイナーバージョンアップが盛んですね。

WordPress を 2.8.2. に更新

つ1週間前に 2.8.2. にバージョンアップしたばかりの WordPress ですが、さらに 2.8.2. が出たので昨日更新しました。データのバックアップを取り、プラグインを一旦停止して、Upgrade ボタンを押すだけ。特に問題なくバージョンアップができたようです。

WordPress MU も 2.8.2. が出ているので、こちらも近いうちに更新しようと思います。

Similar posts 設定変更

過去の投稿から似た内容のものを自動的にリストアップしてくれる Similar Posts というプラグインですが、これまで使っていた設定だと投稿にタグを付けるようになって(2008年12月)以降のものばかりがヒットしていたので、重みづけを変えてみました。

  • 旧:content: 70%, title: 20%, tags: 10%
  • 新:content: 74%, title: 20%, tags: 6%

これだと古い投稿も出てきます。まぁ中身が本当に関連しているかは別問題ですが...

    WordPress を 2.8 にアップデート

    WordPress の新バージョン 2.8 が出たので、例によって自動アップデートを行いました。念のためすべての投稿をエクスポート機能を使ってバックアップした上で、管理画面で “update” ボタンをクリックするだけ。あっけないぐらい簡単ですね。

    そんなわけで授業で使っているいくつかのブログも含めて(ただし新バージョンが出ていない WordPress MU は除きます)アップデートを行いました。特に問題もなさそうだし、今のところどこが変わったかあまりわかってません。

    振り返る

    このブログも始めてからまる5年が経ちますが、過去の投稿って自分でもめったに見返さないですよね。昨日の投稿では前に同じビールを飲んだのがいつのことだったのか、ブログ内検索で見つけた結果にリンクを張りましたが、似たようなことを自動的にできたら面白いかなと思いました。

    そこで今回登場したのが Similar Posts というプラグイン。これをインストールすると、過去の投稿の中から似たような内容のものを自動的にピックアップして、投稿の最後にリストしてくれます。見つけ方やリストする投稿数などもいじることもできますし、なかなか楽しそうです。

    現在は個別投稿のみにこの一覧を載せているので、もし一覧が見えない方は投稿のタイトルをクリックしてください。まだ設定をあまり見ていないのでどの程度の精度があるかわかりませんが、それも含めて過去の投稿をご覧いただければ幸いです。

    設定方法は至って簡単。管理画面のプラグインのページで Similar Posts と検索し、”Post-Plugin Library” と “Similar Posts” の2つのプラグインをインストールするだけでした。あとは設定画面であれこれいじるわけですが、その辺についてはこちらのブログを参考にさせていただきました(先人に感謝)。

    備忘録:現在の重みづけは、content: 70%  title: 20%  tags: 10% にしてあります。どのぐらいのバランスが良いのかは今後要検討。

    テスト投稿

    大学内のネットワークから WordPress で投稿ができるかの確認テストです。ちなみにこれは Windows Vista Business 上の InternetExplorer 8 で書いています。

    なんでこんなものを書いているかというと、先ほどから授業用のブログ(WordPress MU)で突然投稿ができなくなったからです。どうしたのかな。

    ちまちまと

    WordPress MU をインストールして新年度の授業用ブログは完成していたのですが、既成のテーマ(テンプレート)というのはやはりどうも細かいところが気に入らなくなってしまい、あっちの行間がちょっと広いとか、ここの余白があまり面白くないとか考えているうちに、PHP と CSS ファイルをあれこれいじることになってしまいました。唯一の救いは、MU を使っているので1つのファイルを修正すればそれが現在4つあるすべての授業ブログに一斉に反映されることです。

    授業用のブログは、ある意味ポータル的な役割も果たすので、学生がトップページから必要なページ(たとえば Moodle やオンライン辞書)にワンクリックで飛べることが理想です。多くのリンクが並ぶと、カテゴリーを付けたりそれを並べ替えたりといった作業が必要になりますが、My Link Order というプラグインを導入することでかなりスムーズに作業が進みました。

    リンクがらみでもうひとつ。WordPress を使って作成したブログのリンクを別の WordPress ブログにインポートするには、”Tools” の “Import” で “Blogroll” を選択し、リンク元のブログ URL/wp-links-opml.php (たとえば “http://example.com/blog/wp-links-opml.php”)を読み込めばOK。このことは WordPress の公式ドキュメントには記載されていないようで、情報にたどり着くまでにちょっと時間がかかりました。ただしこの方法ではリンクのカテゴリーや description という個々のリンクの補足情報などがインポートされないのが残念なところ。この辺を修正するパッチも出ているようですが、WordPress のプログラム本体に手を加えたくなかったのでやめました。

    何はともあれ、授業用ブログは使える状態にまでたどり着きました。もしかしたら最後の微調整として、右側のサイドバーに Recent Posts (最近の投稿)を表示するように変更するかもしれませんが、これは授業が始まってからの修正でも問題なさそうです。というわけでうらの研究室のトップページからも授業ごとのページは新しいブログに変更します。

    WordPress MU のインストール手順

    昨日の続き。WordPressμ のセットアップが大体終わる。ところで、昨日は「ミュー」と書きましたが、「エムユー」という呼び方の方がもしかすると一般的なのかもしれません。もともとは multi-user を略して MU から来ているそうなので。まぁどちらでもよいですが、検索なんかできちんと引っかかるように、「ミュー」「エムユー」「MU」「μ」と全部書いておきます。一応統一したいので、今後は WordPress MU もしくは単に MU と表記します(いちいち μ と書くのはめんどくさいので)。

    昨夜のトラブルの原因がなんとなくわかったので、もう一度インストールし直しました。今度はうまくいったので備忘録代わりにメモしておきます。サーバーはホスティングですが、特に何も設定をいじらずにインストールできました。基本的な手順は、ダウンロードしたファイルに入っている readme.txt の通りです。

    1. データベースを作成。僕が使っているホスティングでは cpanel が使えるので簡単。WordPress MU 用にひとつデータベースを作成し、同じくユーザを作成する。DB 名、ユーザ名、パスワードをメモしておく。
    2. 公式サイトより最新版(2.7)をダウンロード。解凍後 wordpress-mu というフォルダを丸ごとアップロード。アップロード後にこのフォルダ名を好きな名前に変更。僕の場合は、担当する授業毎に1つのブログを設置するため courses という名前にしました。
    3. パーミッションの変更。MU のフォルダ(僕の場合は courses フォルダ)と、その直下の wp-content フォルダを書き込み可にする。僕の場合は両方とも 777 でできました。
    4. ブラウザで MU のフォルダにアクセス。僕の場合は “urano-ken.com/courses/” にアクセス。これでインストール作業が始まります。メモしておいたDB名、ユーザ名、パスワードを入力します。その他はほとんど初期設定のままいじっていません。一か所だけ、各ブログの URL をサブドメイン(”ブログ名.urano-ken.com/”)にするか “urano-ken.com/courses/ブログ名” にするか聞かれますが、サブドメインが推奨となってますが、僕の場合は前者を選んで躓きました。原因はよくわかりませんが、インストールし直しで後者を選択したらうまくいきました。
    5. 基本的にはこれだけです。admin アカウントが作成され、ログインすればダッシュボードにたどり着きます。
    6. 最後に 777 にした2つのディレクトリのパーミッションを元に戻します。

    初期設定ではダッシュボードをはじめ全て英語ですが、普通に日本語も入力できたのでこのままで行きます(普段使ってる WordPress もすべて英語のままです)。ダッシュボードの見た目は、普通の WordPress の同バージョンのものとほとんど同じで、一番上にサイト全体の管理用のメニューが並んでいるところが違うぐらいです。

    ブログやユーザの作成等はすべて Site Admin の中でできます。ひとつ動作が違うのがテーマやプラグインの設定です。MU でない方の WordPress はプラグインもテーマもクリックするだけで新しいものをインストールできるようになりましたが、MU ではまだ手動。必要なものをダウンロードし、それぞれ “wp-content/plugins/” と “wp-content/themes/” にアップロードする必要があります。テーマについてはさらに Site Admin にてアクティブにしたものだけが個々のブログで使えるようになります。各ブログの Appearance メニューに進むと、アクティブなテーマの一覧が並ぶので、1つ選んで activate します。ブラウザ上で PHP や CSS を編集する機能は MU には付いていないようです。

    プラグインについては、上記プラグインフォルダにアップロードしたものを、ブログ毎に activate します。この辺は普通の WordPress の 2.6 ぐらいまでと同じ段取りです。

    その他細かい設定はいろいろできますが、すべて読めばわかるものばかり。授業用のブログとして使うのに必要な設定は大体終わったと思います。

    最後にテーマの設定。せっかくだから新しいものにしようと思って、めぼしいものをダウンロードしました。カレンダーが表示されていなかったり、投稿日時の表記方法が気に入らなかったりしたので、CSS や PHP ファイルのいくつかを微調整。とりあえずこれで行けそうかなというところで本日の作業は終了です。あとはリンクに授業で使ういくつかのサイト(Moodle やらウェブメールやら)を追加する作業がありますが、4月に入ってからでもいいかな。

    参考までに、とりあえず見た目だけ出来上がった授業ブログを1つ紹介(こちらをクリック)。まだ中身は空っぽですが、箱としてはほぼ完成。これと同じようなブログを授業の数だけ作成する予定です。

    あえて MU を使わずに、授業の数だけ WordPress をインストールするすることも可能です。インストールの手間も大したことないし、実際すでにこのサイトでは4つの WordPress ブログが動いるわけです。でもまぁせっかくだから新しいことにも挑戦してみようということで、今回の MU 設置となりました。

    以上、こんな記録でもどなたかのお役に立てれば幸いです。

    ウェブがらみであれこれ

    あせっているうちに時間ばかりが過ぎていく今日この頃です。寝不足のせいか、夕食後8時過ぎには寝てしまいました。11時頃になって起きだして、書斎でゴニョゴニョ仕事をしております。

    昨日は卒業発表があって、会議などを経て夜は学部の飲み会。老舗の料亭でたらふく食べ、2次会では食べ物には一切手が伸びませんでした。2次会終了後帰宅のつもりでしたが、T先生にお誘いいただき、近くのワインバーへ。はじめて行く店でしたが、グラスワインの種類の多さにびっくり。満腹だったため料理はお通しで出てきたキッシュをいただいただけでしたが、メニューにはうまそうなビストロメニューがずらり。ワインはボルドーの赤と貴腐ワインを1杯ずついただきましたが、両方ともうまかったです。今度はお腹をすかして出かけたい店でした。

    今日も一日職場。留年生のガイダンスや入試がらみの会議等。あとはウェブマスターをしている某学会のオンライン申し込みページの更新作業。cgi を使っていますが、cgi 自体をいじるわけではないので僕のように知識がほとんどなくても無問題。あとは動作確認のみです。

    WordPressμ (ミュー)のインストールに挑戦しています。WordPress 自体はこのサーバーでもいくつか動かしていますが、ミューの方は1つインストールすると複数のブログを一括で作成・管理できます。MovableType から WordPress に移行する際、唯一不便になったのが、この複数ブログの管理だったんですが(MT には標準で付いている機能なので)、ミューがうまく機能すればそれも解消される予定。

    ミューの存在は前から知っていましたが、普通の WordPress より開発ペースが少し遅れているため、現在の 2.7 が出るのを待っていました。データベースを作成後、インストール自体はうまくいったみたいなんですが、複数のブログを作る段階でつまずいています。まだ時間はあるので明日以降原因を探る予定。

    このひとりごとやリサーチノートなど、すでに動いているブログについては現状のままで、ミューでは授業用のブログを中心に運用する予定です。というわけで3月中には作業を終えないといけません。

    もうひとつ懸案は Moodle 上で声を録音する機能。以前ここで紹介した Moodle の音声録音モジュールなんですが、大学内のネットワークではうまく動かないんです。この件についてきちんと原因を確認してませんが、おそらく ActiveX の使用に対してセキュリティではねられているのではないかと思っています。4月から使ってみたい機能なんですが、この件についてどうしようか現在考え中。システム支援課に助けを求めようかな。

    そうこうしているうちに時間はどんどん過ぎていきます。窓の外はものすごい吹雪になっているっぽいです。いつも見えるススキノやテレビ塔が全く見えないし、強い風がマンションの建物にぶつかってピューピュー言ってます。