wordpress2.5 Released
wordpress2.5がリリースされました!何より僕は最近Safari3.1 For Windowsという超マイナーブラウザを使っているので(Mac版ならシェアあるけどね)、それをサポートしていくれているTinyMCEのデフォルトサポートがうれしいのです。
でも、wordpress2.5になって使い勝手が驚くくらい上がった気がします。管理画面のデザインがまともになって、すごいシンプルで使いやすく、細かいところにも気が利いている感じ、、、っていうんでしょうか。
公式サイトの2.5の変更部分は以下の通り(引用元:WordPress 2.5)。
スピードアップ&すっきりと整理されたダッシュボード — ダッシュボードで何が一番重要かについて皆さんのフィードバックを聞き、ブログ管理に最も必要な作業に集中できるように管理画面をを整理することに力を注ぎました。Happy Cog、そしてコミュニティとのコラボレーションにより、1.5 以来最も大きなインターフェース面での前進をすることができました。
ダッシュボードウィジェット — 新しいダッシュボードのホームページには、各種ウィジェットが表示されるようになりました。これらのウィジェットには、投稿関連の統計情報・コメント・被リンク・最新プラグイン情報、WordPress 関連ニュースなどを表示するものが含まれています。ダッシュボードウィジェットは、例えばWordPress 関連ニュースのかわりに自分の住む地域の新聞社のフィードを表示させるなどのカスタマイズをすることもできます。また、プラグインをフックすることもできます。例えば、WordPress.com stats ウィジェット(日本語版はこちら)を入れると、統計情報を表示する便利なボックスが追加されます。
進行状況が分かる複数ファイルアップロード — いままでは大きなファイルをアップロードする際、どれだけ時間がかかるか分からないまま、じっと待つだけしかできませんでした。また、一度に1ファイルしかアップロードできなかったため、複数のファイルをアップロードするにはかなりの根気が必要でした。これからは、画像や音声・動画など、複数のファイルを含むフォルダを選択するだけでまとめてアップロードができる上、それぞれの進行状況を見る事もできるようになりました。
おまけ: EXIF 情報の抽出 — カメラの種類、絞り、シャッタースピード、ISO などの EXIF メタ情報を持つ JPEG ファイルをアップロードすると、WordPress はこれらのデータを抽出してカスタムフィールドに挿入し、テンプレートで利用する事ができます。その他の似たような情報がある場合は、WordPress の対応するフィールドに振り分けられます。最近のデジタルカメラのほとんどは EXIF データを生成するようになっています。
投稿記事およびページ検索機能 — これまでは投稿記事のみしか検索ができませんでしたが、個別ページも含めた検索ができるようになりました。これは WordPress を CMS として利用するにはとてもいい機能です。新しいテーマでは、検索結果で個別ページに特別なスタイルを加える事もできるようにならいました。
タグ管理 — タグの追加、名称変更、削除がプラグインを使わずにできるようになりました。
パスワード強度チェック — プロフィールページでパスワードを変更する際、選んだパスワードの強度をチェックします。
同時編集保護 — 複数の投稿者がいるブログで、他の人が編集中の投稿を開き、自動保存機能でお互いの変更を繰り返し上書きしてしまい、何時間もかけた文章をなくしてしまった事はありませんか?きっと普段は使わないような言葉が口から出てきてしまった事でしょう…。新バージョンでは他の人が編集している投稿の編集画面を開くと、最初に編集を始めた人が編集終了まで他の人が保存できないよう、投稿をロックするようになりました。その場合、メッセージが表示されます。
プラグインの簡単アップグレード — お使いのプラグインが公式プラグインレポジトリに登録されている場合、2.3 以降のバージョンではアップグレード通知が表示されるようになっていました。今回はそれをさらに次のステップへ進め、新しいプラグインのダウンロードとインストールも行えるようにしました。これはサーバー環境にいくらか左右されますが、OS X や Windows がソフトウェアのアップグレードの際にパスワードを必要とするように、FTP パスワードを聞かれることがあるかもしれません。私たちがテストを行った多くのサーバー環境ではだいたい大丈夫なようですが、あなたの場合は違うという事もあるかもしれません。
使いやすいリッチテキストエディター — この改善点をうまく説明するにはどう言えばいいのかよく分からないのですが、「リッチテキストエディターがコードと干渉しなくなった」といったところでしょう。今回私たちは TinyMCE のバージョン3.0を取り入れました。このバージョンでは、Safari への対応が今までよりも良くなり、複雑な HMTL コードの扱いが改善されています。また、ブラウザ向けのWriteroom のような「フルスクリーンモード」も追加されました。
ビルトインギャラリー — 複数ファイルアップロードを最大限に活用して大量の写真をアップロードした場合、ギャラリーを簡単に投稿内に挿入するための[ gallery] (半角スペースは取り除く)というショートコードを用意しました。これを使うと、すべての画像のサムネールとキャプション、個別画像ページ(コメントがつけられる)へのリンクを表示できます。僕自身のブログでも、この機能を使って今までに1,200枚以上の写真を23のギャラリーにアップロードしています。ショートコードにはオプションもありますので、こちらのドキュメンテーション(英語)をご覧下さい。
開発者向け機能
それではギークな話題に入りましょう。ここまでで挙げたような機能の追加にはわくわくしていますが、各機能には他の開発者がこれらを拡張できる可能性、つまり API も含まれています(その中でも特に優れた拡張機能は、将来 WordPress に統合されるかもしれません)。
salt を使ったパスワードの暗号化 — phpass ライブラリを使用し、すべてのパスワードを salt を使って暗号化してからデータベースに保存することで強度を向上しました。これにより、ブルートフォースアタックは実用的でなくなります。mod_auth_mysql のようなものをお使いであれば、レガシー MD5 ハッシュを引き続き利用できるプラグインを作成していますのでご利用ください(このハッシュ化はプラグインでの完全な上書きが可能です)。ユーザーのパスワードは次回のログイン時に自動的により強力なパスワードに更新されます。
安全な Cookie — Cookie はこちらの PDF で説明されているプロトコルをもとに暗号化されるようになりました。 これは
user name|expiration time|HMAC( user name|expiration time, k)のような形式で、k = HMAC(user name|expiration time, sk)、skは wp-config.php ファイルで定義した秘密鍵となっています。タクソノミーと URL を簡単に作成 — これは例を使って説明するのが一番でしょう。いくつかの引数を使い、
register_taxonomy()を呼び出す事ができます。例えば “people” タクソノミーを登録します。画像を編集する際、タグのような記入欄に、その値として画像に映っている人の名前(例:Firstname Lastname)を入れます。これらの画像は、/person/firstname-lastname/というURLでアクセスできるようになります。これらすべてを行うには、関数をひとつ呼び出すだけです。インラインドキュメンテーション — WordPress に新しく追加されたコードの多くには、関数や引数を解説するインラインドキュメンテーションが含まれています。
データベースの最適化 — 今回のリリースではテーブルのレイアウトは変更していません。これは、プラグインの多くが新バージョンでも問題なく使える理由のひとつです。現在270万のブログを有する WordPress.com で発見したボトルネックをもとに、インデックスをいくつか追加し、デフォルトフィールドをもっと柔軟にしました。アプリケーション側では違いが分かりませんが、データベース側で少し速度が向上しています。
$wpdb->prepare() — WordPress内のほぼすべての SQL は前もって準備されるようになり、同様の関数がプラグインでも利用できるようになりました。これにより、基本的な SQL エスケープ処理に関する問題を回避できるでしょう。
メディアボタン — 本文記入欄上のメディア追加ボタンは拡張可能です。たとえば「Google マップを追加」ボタンを追加したり、既存のボタンを上書きしたりすることもできます。
ショートコード API — 新しいギャラリー機能は、ショートコード APIを使っています。ショートコードは角括弧で囲んだ文字列で、コード実行時にもっと面白い他のものに魔法のごとく形を変える事ができます。複雑な HTML や埋め込みコードの代わりに、短くて簡単なテキストのショートコード使えば、、投稿者は記事内にあるコードを崩してしまわないか心配しなくてすむようになります。ショートコード API の完全なドキュメンテーションはこちらです。