• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

Version 2.8

提供: WordPress Codex 日本語版
移動先: 案内検索

2009年6月10日(水)(米国時間)、有名なトランペット奏者であり歌手のチェット・ベイカー(Chet Baker)にちなんで名付けられた WordPress 2.8 "Baker" がリリースされました。 このバージョンの機能強化とバグフィクスについては、開発ブログのお知らせならびに更新履歴 2.8 をご覧ください。

Version 2.8 のデータベースバージョン(wp_options の db_version)は 11548 へ変更となり、Trac のリビジョンは 11549 となりました。

  • 新たなドラッグ&ドロップウィジェット管理インタフェース および ウィジェット API
  • プラグイン/テーマエディタに構文強調表示・関数参照(lookup)機能を内蔵
  • 管理パネルからテーマディレクトリを閲覧・インストール
  • ダッシュボードウィジェットで最大 4カラム配置を可能に
  • 管理ページに表示する項目数を表示オプション(Screen Options)で設定可能に
  • タイムゾーンと夏時間(サマータイム)自動調整に対応
  • IIS 7.0 URL リライトモジュールに対応
  • スクリプトの圧縮・連結により管理パネルのローディング(読み込み)を高速化

新機能

登録ユーザー向け機能

  • 新規テーマインストーラ
  • テーマエディタ/enプラグインエディタ/en に CodePress 構文強調表示を追加
  • メニュー名を「ヘッダーの背景と文字の色」から「カスタムヘッダー」に変更し、デフォルトテーマに反映
  • 投稿編集画面にて、コメントをディスカッション postbox から単独の postbox に分離する
  • 編集画面で JavaScript がオフの場合もタグを利用できるようにする
  • コメントにスパムの印を付ける際に確認メッセージを出さない
  • 投稿の著者自身によるコメントは通知しない
  • 固定フロントページのコメント改ページを修正
  • ダッシュボードウィジェットの配置を、表示オプション(Screen Options)タブで 4カラムまで設定できるようにする
  • ダッシュボードの「現在の状況」モジュールで、タイトルをリンクに (2.7.1 での変更)
  • 管理パネルアイコンを改良 (グレー〜透明の影付き)
  • 管理パネルのカラースキーム「ブルー」を更新
  • Press This の UI(ユーザインタフェース)を改良、引用の修正、「投稿者」権限(Contributor)でも Press This を使えるようにする
  • 管理パネル > メディア > 新規追加/en に「Cancel Upload」ボタンと「Delete」リンクを追加
  • 管理パネル > リンク > 編集/en 画面に "Rating" カラムを追加
  • WordPress インストーラを改良し、メールアドレスの入力間違いを防ぐようにする
  • ウィジェットユーザインタフェースを改良
  • 全てのプラグインファイルを編集できるようにする (Ticket 6732)
  • 管理パネル > プラグイン > 新規追加画面のプラグイン検索の改良 (2.7.1 で実施)
  • プラグインに改ページオプション
  • 管理パネル > プラグイン > 新規追加画面の「Install a plugin in .zip format」を、新たに設けた「Upload」タブへ移動
  • 予約済み投稿に、相対的な日時(○時間後など)ではなく実際の日時を表示
  • 投稿のクイック編集・一括編集のタグ提案(suggest)を修正
  • ページのパーマリンクエディタを変更・修正
  • Ctrl/Command+S キーを押下すると投稿/ページを自動保存
  • アップローダのギャラリータブに、全ての選択を反転するボタンを追加
  • 一つのページに複数のギャラリーを追加できるようにする
  • コメント・投稿・ページ・メディア・カテゴリー・タグ画面の表示オプション(Screen Options)に改ページオプションを追加
  • LiveJournal インポータのオーバーホール(WP_IMPORTING 定義も追加)
  • カテゴリーの説明を 管理パネル > ツール > インポート > WordPress でインポートできるようにする
  • 全登録ユーザーが Turbo にアクセスできるようツールメニューを表示
  • 管理パネル > ツール > アップグレード画面を訪れたときに新バージョンをチェック
  • アップグレード処理中のデータベース・アップグレードメッセージの説明を改良
  • 人気カテゴリーリストの修正
  • 管理パネル > 投稿 > タグ画面に説明(description)欄を追加
  • WAI-ARIA ランドマークロール(WAI-ARIA landmark roles)をデフォルトテーマに追加
  • 管理パネル > 設定 > 一般設定のタイムゾーン設定に「あなたのタイムゾーンと同じ都市を選んでください」というラベルを追加
  • 管理パネル > 設定 > その他の設定画面から「レガシーな my-hacks.php ファイルを使用」(Use legacy my-hacks.php file support)オプションを除去
  • 管理パネル > コメント > コメント/en画面にて、権限の低いユーザーにメールアドレスを表示しない
  • ログイン時に大文字・小文字を区別しない
  • ログインページと登録ページが検索エンジンに検索されないようにした
  • iPhone向けのログインページが表示されるようにした
  • ユーザーの追加/編集画面にて他のユーザーと重ならないメールアドレスのみ許可
  • ユーザー登録の際、user_nicenames が既存のユーザーと重ならないようにする
  • 管理パネル > ユーザー > 新規追加/en に「このパスワードを新規ユーザーにメールで送信」(Send this password to the new user by email)というオプションを追加
  • 管理パネル > ユーザー > 新規追加/en で、ユーザーのウェブサイト URL の初期値に http:// セットしない
  • ユーザー追加/en編集画面にパスワード強度メーターを追加
  • スクリーンリーダーに必要な要素を画面外へ出すことにより、その他のデバイスで見えないようにする
  • label・legend 要素の非表示に invisible クラスを使用
  • スクリーンリーダー向けのテキストにセマンティックな class 名を使用

開発・テーマ・プラグイン

  • データベースのパフォーマンスを向上
  • wp_posts テーブルから post_category カラムを、wp_links スキーマから link_category カラムを削除
  • DELETE文を修正し、innoDB や外部キー(Foreign Key)が使われている場合もデータの整合性を守る
  • 一貫性のある ID タイプを強制し、テーブル間で定義された外部キーが使えるようにする
  • post states(投稿状態)に Sticky (先頭に固定表示) を追加
  • post states(投稿状態)リストにフィルターを追加
  • 一時フィルタ・関連フィルタ(transient and related filters)を導入し、広範囲で使用
  • あなたのプロフィールで AIM・Yahoo・Jabber IM ラベルを変更できるようにフィルターを追加
  • "after_db_upgrade" フックを追加
  • ユーザー・カテゴリー・リンクカテゴリー・タグ・コメントテーブルのカラムにフックを追加
  • HTTP API の更新・修正
  • HTTP リクエストの外部送信ブロックに対応
  • HTTP ステータスコードのリストを更新 (Ticket 9297)
  • ウィジェットおよびダッシュボードフィードに SimplePie を使用
  • pomo ライブラリに切り替え。gettext コンテクストに対応。 ngettext 長文式関数を廃止(Changeset 10584Ticket 9112Ticket 9111
  • TinyMCE/en 3.2.4.1
  • 画像のトリミング機能に Jcrop 0.9.8 を使用
  • pclzip を 2.8 に更新
  • PHPMailer を 2.0.4 に更新
  • SWFUpload to 2.2.0.1 に更新
  • スクリプトローディングのパフォーマンスを向上
  • アーカイブおよびカレンダークエリの改良
  • Cron 起動の改良
  • PHP 5 用のタイムゾーン改良
  • WP_Widget クラスを追加、元からあったウィジェットを WP_Widget へ移動
  • wp_tag_cloud でその他のタクソノミー/en(投稿カテゴリーなど)も使えるようにする (Changeset 10554)
  • wp_tag_cloud() に引数 echo を追加
  • 投稿編集画面に表示する投稿数をプラグインで制御できるようにする
  • wp_list_authors に引数 "style"・"html" を追加 (Ticket 4420)
  • wp_list_categories に引数 "exclude_tree" を追加、hierarchical が指定されている場合、exclude 引数が exclude_tree と同様に動作するようにする。(実際は 2.7.1 での変更) (Ticket 8614)。
  • 新規テンプレートタグ the_modified_author (Ticket 9154)
  • カスタムタクソノミー/enへの対応の強化
  • 管理画面の title でブログ名の前に画面名を表示(ダッシュボード < ブログ名 のように) (Ticket 9028)
  • WordPress.org シークレットキーサービスに https://api.wordpress.org/secret-key/1.1/ を使用
  • 各種 phpDoc 更新
  • XSS 攻撃の可能性を防ぐため、フィルターを書き直し
  • XMLRPC/en 改良
  • mysql2date のコーディングを改良
  • 認証をさらにプラグしやすくする
  • キャッシュプラグインに対応するため、get_avatar を内部で呼び出す際、ID を使用するよう切り替え
  • WordPress が独自のカノニカル redirect_url を提供していない場合にもプラグインによって提供できるようにする
  • 下書きデータにも post_date を格納。予約済みでない投稿の判定には post_date_gmt がゼロのものを探すこと
  • query_posts の修正 (post_type に従い、orderby=category は削除、メタキーのクエリーに GROUP BY を使用、選択フィールドから meta_value を除去)
  • query_postsorderby=none パラメータを追加
  • wp_list_pages() で出力される class をプラグインでフィルタ(フック)できるようにする
  • head 内に前後の投稿への関連リンク要素((link rel="prev"/"next")を出力する新規関数 (get_adjacent_post_rel_link()/enおよびadjacent_post_rel_link()/en)を追加 (Ticket 8703)
  • デフォルトテーマで、先頭固定投稿(sticky post)に灰色の背景色を追加
  • プロキシ対応
  • map_meta_cap が返す拡張権限をプラグインでフィルタ(フック)できるようにする
  • RSS/RDF フィードの 更新期間をフィルタ(フック)できるようにする
  • wpdb オブジェクトにフィールドタイプを格納
  • タグ説明の新規関数 tag_description および term_description を追加
  • get_body_class()/en にページの class を追加
  • get_catname() を非推奨(廃止予定)とする
  • WordPress デフォルトテーマ・Classicテーマで comments_open()/en および pings_open()/en を使用
  • wp_trim_excerpt()/en フィルタを追加
  • プラグイン・テーマ・コアアップグレード・インストール関数を統合
  • ページの body 要素に page-id-x class を追加
  • wp_list_bookmarks() で存在しないブックマークカテゴリが要求されたときに空のリストを返す
  • プラグインによるメニューの位置変更を可能に
  • ユーザープロフィール更新時のフックを追加
  • wp_loginout に引数 redirect を追加
  • テンプレートタグ wp_lostpassword_url を追加 (Ticket 9932)
  • get_the_author_meta()/en および the_author_meta()/en を新規追加
  • the_author_ID, the_author_login, the_author_firstname, the_author_lastname, the_author_nickname, the_author_email, the_author_url, the_author_aim, the_author_yim, the_author_mns, the_author_description ならびに それらの "get_*()" 関数を非推奨(廃止予定)に。(wp-includes/deprecated.php に全リストあり)
  • プラグインが画面レイアウトカラムを使えるようにする
  • タイトルおよびテキスト input 要素に label を追加
  • プラグイン更新メッセージに情報を加えられるフックを追加
  • フロントページをロードする際のコアバージョンチェックを中止
  • プラグインがコメント Cookie の期限を変更したり、コメント Cookie を削除したりできるようにする
  • コンテキストヘルプを保持したまま、デフォルトヘルプ(ドキュメンテーションとフォーラムへのリンク)のみをプラグインで差し替えられるようにする (Changeset 11235
  • エスケープの命名法を新しくする Ticket 9650
  • wp_specialchars() を非推奨とし、esc_html() を採用。プラグインのセキュリティ 改良のため esc_attr() 同様に esc_html() も引用符をエンコード (Development Updates 参照)
  • sanitize_url()・clean_url() を非推奨とし、esc_url_raw()・esc_url() を採用 (Development Updates 参照)
  • get_pages()/en に引数 number・offset を追加 (wp_list_pages() でも同引数を使用可能)
  • ログインをよりプラグしやすく
  • テンプレートのどこにでも標準のウィジェットを挿入できる関数 the_widget() を追加 (Ticket 9701)
  • プラグインがタイムゾーン対応の有効化・無効化を上書きできるようにする
  • カテゴリー・タグクエリの結合を修正
  • IIS 7.0 URL Rewrite Module(リライトモジュール)に対応
  • IIS 同様に Expression Web 2 を認識
  • 複数の検索フォームテンプレートを許可
  • sanitize_html_class() を導入。カテゴリー・タグ・ユーザなど意味のあるクラス名を返し、必要であれば替わりに ID を返す (Ticket 8446)
  • wp_insert_user() を呼び出してユーザを作成するときに、別のユーザ種類を設定できるようにする
  • 'direct' のファイルシステムメソッドを改良、FS_METHOD 定数を導入
  • print_head_scripts と同様に、print_footer_scripts にフックを追加
  • comment_moderation_headers フィルタを追加
  • プラグインが使いやすいように、upload_dir フィルタをディレクトリ作成前に移動
  • サイドバー、フッター、ヘッダーの GETアクションでパス名
  • アップグレーダの改良。互換性向上のため curl を最後の位置に移動し、2番めに fsockopen
  • フィルター 'the_content_more_link' を追加。more リンクに style、rel、title 属性を追加可能
  • Trac を更新

高度な機能

JavaScript ローダ改良

  • jQuery 1.3.2
  • スクリプトローダを改良。プラグインによってフロントエンドヘッダーおよびフッターへのスクリプトのキュー読み込みを許可、サーバーサイドの圧縮スクリプトキャシング用フックを追加、ENFORCE_GZIP 定数に対応 (デフォルトでは、より速いため deflate を採用)
  • デフォルトで圧縮 (minified) バージョンのスクリプトを読み込み、define('SCRIPT_DEBUG', true); によって開発バージョンを使うことができるようにする
  • ページのダウンロード速度を上げるため、クイック編集のカテゴリーチェックボックスのイベントを削除
  • シンプルなフォームチェックを追加し、AJAX スタイルのカテゴリー追加を jQuery 1.3.1 互換にする
  • farbtastic.js がヘッダーで読み込まれなくてはいけないようにする
  • 注: Lester Chan の Loading Javascript in Footer blog および Andrew Ozz のScript Loader Updates blog を参照。

新ウィジェット API

WP_Widget は、ウィジェットプラグインを書くときの複雑さの多くを抽象化により解消するクラスです。特に複数利用できるウィジェットの作成に威力を発揮します。

  • 基本的には、WP_Widget を独自のクラスで拡張する。このクラスはコンストラクタおよび widget()、form()、update() の3つのメソッドから成る。
    • widget() - 実際のウィジェットのコンテンツを出力する
    • update() - 設定の保存を処理する
    • form() - 設定フォームを出力する
  • ウィジェットは register_widget() にそのウィジェットのクラスを渡すことによって登録する。
  • WP_Widget を使って書いた全てのウィジェットは複数のインスタンスを作成することが可能。
  • 設定
    • 古い単独インスタンスのウィジェットの設定は、WP_Widget に移植され、新しい複数設定保存の形式にアップグレードされる。これは単に、インスタンス ID をキーとする多次元配列の形式。
    • 古い単独インスタンスのウィジェットの設定はそのままで動作するはず。
    • もしカスタム設定の保存が必要な場合は、独自の et_settings() および save_settings() メソッドを提供できる。
  • WP_Widget ソースはこちらで見ることができます (詳細および使い方は phpdoc を参照): http://core.trac.wordpress.org/browser/trunk/wp-includes/widgets.php
  • 使い方の例はこちらで: http://core.trac.wordpress.org/browser/trunk/wp-includes/default-widgets.php
  • もし今までにウィジェットを作成した場合は、WP_Widget に移植し、改善のためのフィードバックを Trac Ticket 8441 に送ってください。
  • WP_Widget の基になった MultiWidget クラスに敬意を表します: http://blog.firetree.net/2008/11/30/wordpress-multi-widget/
  • 上記は Ryan Boren の wp-hackers への投稿から抽出した。

WordPress ウィジェット API も参照のこと。

Version 2.8 には含まれない機能

以下の機能は Version 2.8 (または Version 2.7) には含まれません。

  • 一部のデフォルトショートコード。WordPress.com で最も人気のあるトップ10?
  • ショートコードと相互関連がある oEmbed 対応
  • 投稿リビジョンの画面改善。バージョンで何が変更されたかを表示するオプションのフィールド?
  • OAuth 対応
  • 投稿、コメント、添付ファイルなどの GeoData
  • ma.tt サイトのカスタムギャラリーで行っていることがすべてできるようにするテンプレートタグ
  • メニュー編集機能
  • more、nextpage タグの前後の閉じられていないタグの処理 (Ticket 6297)
  • Sitemaps をデフォルトで含める
  • インポーターを新しくする (LiveJournal インポーターはすでに新しくなっている)
  • ギャラリー用の post_type
  • テンプレート編集のバージョン管理
  • 現在編集中のテンプレートに使われている関数のドキュメンテーションへのリンク
  • 階層化用の MPTT (Modified Preorder Tree Traversal)

外部リンク


WordPress バージョンの一覧もあわせてご覧ください。


最新英語版: WordPress Codex » Version 2.8最新版との差分