- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
Version 4.1
提供:WordPress Codex 日本語版
2014年12月18日に WordPress バージョン 4.1 "Dinah" が公開されました。ジャズミュージシャンの Dinah Washington から命名されています。詳しくは WordPress Blog および en:Changelog/4.1 を参照してください。
目次 |
ハイライト
- 新しいデフォルトテーマ - Twenty Fifteen
- すっきりと読みやすい、ブログに焦点を当てたテーマ。
- どんな画面でもコンテンツが中央に表示されるよう、モバイルファースト方式を採用。スマホやタブレットでも、ノートやデスクトップPCでも。
- 世界中の様々な言語を表示できる Google Noto フォントファミリー に対応。
- WordPress が持つカスタマイズ機能にフル対応。
- 詳細
- 集中執筆モード:文章の内容を考えるときに時々集中しなければならない場合があります。そんなときは集中執筆モードを試してください。タイピングを始めるとき、ほかの集中を妨げるものはすべて消えますので、執筆に集中できます。ほかの編集ツールは必要なときにすぐに再表示できます。
- 言語の選択:現在、WordPress 4.1ではすでに44の言語に対応しており、現在も進行しています。一般設定から言語を切り替えることができます。
- 共有コンピュータからサインアウトするのを忘れることをご心配なら、どこからでもログアウトすることができます。
- インラインツールバーはすばやく画像編集ツールにアクセスできます。
- プラグインインストーラは試してみる価値のあるプラグインを提案します。あなたやほかのユーザーがインストールしたプラグインをおすすめしてきます。
- Embedding:Vine動画が記事にURLを投稿することで簡単に埋め込みができるようになりました。
- 開発者向け
- 複雑なクエリー - meta、date、term クエリは、ネストした句や複数のオペレータなどの高度な条件ロジックをサポートします。例: A OR ( B AND C )
- テーマの<title> タグ - add_theme_support( 'title-tag' ) は WordPress に複雑な document titles 処理を伝えます。
- Customizer API - カスタマイザーの拡張された JavaScript API は、ダイナミックなコンテキストベースのコントロール、セクション、パネルなど、新しいメディア体験をもたらします。
- Developer reference - インラインコードドキュメントの継続した改良により、開発者リファレンスはこれまで以上に完全になりました。
What's New
全般
- ダッシュボードの概要セクションで総コメント数の代わりに承認されたコメント数が表示されるようになりました。
- サイトの言語:言語設定が一般設定に移動しました。インストール・有効化されているされている言語がドロップダウンで表示されます。
- 4種類の案内表示が出るようになりました。成功:緑、警告:オレンジ、エラー:赤、お知らせ:青
投稿
- 記事の編集画面のタイトルの入力項目でスペルチェックが有効になりました。
メディア
- iOS 7.xのSafariでは動画ファイルのアップロードを避けるため、複数ファイルのアップロードは無効になりました。
- PSDファイル(Adobe Photoshop形式)がアップロードできるようになりました。
- oEmbed:Vineエンドポイントがサポートされました。
- メディアライブラリでアップロードが失敗したときにエラーメッセージが表示されるようになりました。
外観
- メニュー設定 と 背景の設定が削除されました。現在の管理画面から進むとカスタマイザーにリンクされています。
- ウィジェット設定に「カスタマイザー内で管理」のリンクボタンが画面上に追加されました。
- テーマ:「ライブプレビュー」がプライマリーアクションになり、「有効化」はセカンダリーアクションになりました。
ユーザー
- ユーザーのプロフィール画面に他のすべてのセッションをクリアするボタン、ユーザーの編集画面にすべてのセッションをクリアするボタンを導入しました。
アクセシビリティ
- スクリーンリーダーから管理メニューの内容は読まれないようにしました。
- メディアマネージャの選択モードでキーボード操作が改善されました。
- メニュー設定と背景設定のキーボードのアクセシビリティが改善されました。
- 管理画面の管理メニューとツールバーの暗い背景色に対してテキストのコントラストが改善されました。
- テキスト編集画面に切り替えた時、スクリーンリーダーでテキストエリアの内容が読まれるようにされるようになりました。
- 分かりやすくするように外観/テキストボタンを<a>タグの代わりに<button>タグが使われるようになりました。
- プラグイン情報のモーダルでレビューリンクを注目されるスタイルに改良
- TinyMCE:
- 画像ツールバーにフォーカスがある状態で Esc キーを押すと、フォーカスをエディタに戻す。
- エスケープで閉じる際のヘルプモーダルに閉じるボタンの追加。
- エディタ iframe のタイトルをオーバーライド (スクリーンリーダーアプリがこれを読む)、Alt+Shift+H ショートカットを改良。
- ヘルプのモーダルにdescriptionsのショートカットへのfocusを追加
マルチサイト
- ネットワーク設定画面に、デフォルトのネットワーク言語を設定
開発者向けの変更
全般
- 多くの新規ユニットテストを追加、マルチサイトのユニットテストを再編成し、失敗テストをレビュー・除去。4.0と比較してベースのPHPUnitテストの実行時間は半分以下となったが、カバレッジは改善。
JavaScript
- ドキュメントに JSDoc3 を公式に適用
- メディアビューのドキュメントを改善
- ハートビート: window.onfocus/onblur の代わりに、ページ可視性 API (使用可能な場合) と document.hasFocus() を使用
カスタマイザー
- “テーマカスタマイザー” を単に “カスタマイザー” に (テーマ固有である必要がないため)。
- カスタマイザーの拡張された JavaScript API により、動的かつコンテキストに依存したコントロール、セクション、パネルのサポートが可能に。
- パフォーマンス向上のため、変更された設定のみをプレビューに反映。
- コントロールが WP_Customize_Control::content_template() を拡張した JavaScript テンプレートとして書け、これらのコントロールをサーバサイドの呼び出しなしにクライアントでレンダリングできる代替 API。
- カラーコントロールは、カラー設定を変更する (TwentyFifteen で選択されたカラースキームのような) 他のコントロールをリッスンし、それに従って wpColorPicker の値を更新。
- スクリーンリーダーの使用者は、ウィジェットを上下に動かした際にフィードバックを受け取る。
- パネルとセクションは、それぞれ WP_Customize_Panel::$type 、 WP_Customize_Section::$type を使用した、HTML コンテナに CSS クラスとして追加されたタイプを持つ。
- パネルに追加されたセクションは、パネルコンテナから分離された独自のメソッドである WP_Customize_Panel::render_content() でレンダリングされ、パネルとそのコンテンツを独立してオーバーライドできるようになりました。
- オブジェクト値が更新された際に、もしオブジェクト値が変更されていないなら、変更イベントが不正にトリガーされないようになりました。オブジェクト値を比較するには、アンダースコアの _.isEqual() を使用してください。
- theme_mod または option でなければ、同じタイプの複数の設定のプレビューをハンドルするcustomize_preview_{$setting->type} アクションフックを導入。フックされた関数は WP_Customize_Setting のインスタンスをパラメータとして受け取る。
- カスタマイザーの要素は JS でレンラリングされるようになり、パネル、セクションおよびコントロールに安定したソートが JS に追加されました。PHP でのソートは改善され、セクション、パネルおよびコントロールは、各クラスの インスタンス化の順序を $instance_number プロパティに保存します。
- range タイプのコントロールは、input および propertychange イベントをリッスンするようになり、マウスのリリースだけでなくドラッグでも値が更新されます。
バグ修正
- WP_Image_Editor でデフォルトのクォリティを設定するよう修正。
- 投稿者アーカイブのパーマリンクが壊れるのを避けるため、wp_insert_user() 内の user_nicename を常にサニタイズ。
- 現行ユーザーが現行投稿タイプに delete_posts キャップを持たない場合、投稿一覧テーブルの関連するコンテキストの一括操作で delete または trash を表示しない
- comment_reply_link() がリンクを返さない場合、空の HTML マークアップをプリントしない。
- plugins_api() が WP_Error オブジェクトを返すなら、list_plugin_updates() 内で PHP注意を回避。
- プラグイン検索: ページネーションで表示された入力フィールドを修正するために、フォーム内の結果を折り返し。
- プラグインレビューのフィルタリングに正しいリンクを使用。
- クイックタグ: コードブロックの末尾にコンテンツを挿入した後、エディターにフォーカスを移動。
- メディアモーダル内のギャラリー設定の UI にサイズを追加。サイズが変更されたときに TinyMCE ビューを確実にリフレッシュ。
- テーマインストール: いくつかのテーマインストールのスタイルの問題を修正:
- 2行目に折り返されるのを避けるために、文字列 "based on" を rating の下に移動。
- テーマのスクリーンショットと説明の間隔を縮小。
- モバイルのインストールボタンの高さを修正。
- TinyMCE:
- ビューの前にコンテンツを貼り付け/挿入する際に、新しい段落をその上に追加し、そこにコンテンツを挿入。
- wpview プラグインまたは wp.mce がロードされていない場合、wpgallery プラグインが、ギャラリーのプレースホルダーを使用するよう修正。
- デフォルトのスタイルを更新: フォントサイズを大きくし、テーブル内で同じサイズにする。
- Full-height エディター:
- ウインドウがリサイズされた後に、エディターの高さをリセット。
- タイプ中の自動スクロールでキャレット位置をより正しく計算。non-WebKit ブラウザでキャレットがエディタ先頭の上にある場合の自動スクロールを修正。
同梱されたテーマ
- 2行に折り返す「続きを読む」リンクの矢印を防止
- ホームページにリンクヘッダー画像のサイトのタイトルとalt属性を追加
Twenty Fourteen
- フォントサブセットのラテン拡張を含む
- post thumbnail のHTML出力を改良
- アーカイブページで冗長を減らすため、aria-hidden 属性の追加
- リンクテキストと混同を避けるためアーカイブにaltテキストの追加
- 自動生成された抜粋末尾の省略記号と「続きを読む」リンクを置換。アクセシビリティ対応の要件を満たすため
- フロントページにカスタマイザーのおすすめのコンテンツを作る
Twenty Thirteen
- 楕円をリプレース
- IE8でレスポンシブでないレイアウトの修正
- Customizerの設定値を取得する適切なメソッドを使用
- オーディオとvideoプレイヤーのbottom marginを追加
Twenty Twelve
- Fix jQuery selector for menu items with submenus on mobile
- Customizerの設定値を取得する適切なメソッドを使用
Twenty Eleven
- オーディオとvideoプレイヤーのbottom marginを追加
Twenty Ten
- オーディオとvideoプレイヤーのbottom marginを追加
テーマ
- テーマの head で <title> 出力の新しい方法を導入。テーマはサポートの追加が必須で、add_theme_support( 'title-tag' ) を呼び出す。
- ナビゲーション用の新しいテンプレート関数を導入。テーマが自身の一連のナビゲーション関数を定義する必要性を減らす
- get_the_post_navigation() と the_post_navigation()。次の投稿、または前の投稿へのナビゲーション用
- get_the_posts_navigation() と the_posts_navigation()。次の投稿ページ、または前の投稿ページへのナビゲーション用
- get_the_posts_pagination() と the_posts_pagination()。投稿ページ間のページのナビゲーション用。paginate_links() を使用する。
- ページテンプレートの body class を改良
- ほとんどのスラッシュ を ダッシュ に置き換え
- 別の body クラスとしてサブフォルダ名を追加
- 新しいクラスは最後に追加され、古いシンタックスが後方互換性のために残る
- 例えば /page-templates/full-width.php は page-template、page-template-page-templates、page-template-full-width、page-template-page-templatesfull-width-php を生成する
メディア
- Media Grid/List Table パリティ: MEDIA_TRASH が true で trash がグリッドの現行フィルターの場合、2番目の一括操作ボタン "Delete Selected" を追加。
- wp_delete_attachment() 内で孤立したサイズの算出にメタデータに保存されたサイズをループ。$_wp_additional_image_sizes に保存された現在のサイズに頼らない。
- 動画はvideoがレスポンシブに動作するプロパティため、高さをハードコードしないでください。
リビジョン
- revision Backbone classes がrevision.php以外のページで使用されることを許可する。
- Revisions JS テンプレートを出力するための単一なレスポンスの機能を追加。: wp_print_revision_templates(). wp-admin/revision.phpで使用。
- Revisions モジュールはグローバル設定に依存しないで下さい。init でグローバル設定に渡すのみ。結果、クラスが他のどこかで使用されることを許可。
翻訳
- テーマやプラグインの削除の際に翻訳を削除する。
マルチサイト
- Welcome通知を送信しないときに noconfirmation フラグが立つ。
- ユーザーが update_themes キャップを持たない場合、テーマのアップデートカウントを表示しない
- プラグインがない、またはカウントが 0 の場合、プラグインのアップデートカウントを表示しない
- テーマがメインサイトで有効化どうか適切にチェック。一括操作での削除を防止する。
- wp_new_blog_notification() メールテンプレートにログイン URL を含める
- activate_plugin() 内で、既にネットワークレベルで有効化されたプラグインに対して有効化ルーチンを再実行しない
- ネットワークデータベースのアップグレードを実行するときに、サイトのクエリを最適化します。
- ネットワーク管理者に新しいサイト追加とサイトの編集画面の入力フィールドの幅が向上。
クエリ
- WP_Meta_Query, WP_Tax_Query, WP_Date_Query は現在、複雑で包括的なクエリを可能に、ネストされたクエリ構文をサポートしています。
- メタクエリ、タクソノミークエリの能率を向上。多くの場面で冗長な JOIN を削除
- 'orderby=meta_value' が、'OR'で繋がる meta クエリーとして使用した際、現在正しく動作するようになった。
- タクソノミークエリが 'EXISTS' および 'NOT EXISTS' オペレータをサポート
- date クエリを メタクエリ、タクソノミークエリと混ぜても正しく使用可能
- date クエリに渡されたパラメータはチェックされ、正しい日付値であることを確認。不正な日付が検知されると開発者に対してエラーを生成
- 'user_registered' 列に対して users を date クエリでクエリ可能
- データクエリー"Inclusive" の、パラメータの'before'もしくは'after'を用いた場合のロジックが改善されました。
コメント
- コメントフォームで送信ボタン用のclass属性を追加
- get_comment_reply_link() にコメント投稿者の名前を持つ aria-label の属性を追加
- comment_form()に aria-describedby の属性を追加
- コメントのフェッチ時に comments_template() はデータベースを直接クエリせず、 WP_Comment_Query を使用。結果、フロントエンドインタフェースからバックエンドを通じてコメントクエリをカスタマイズする際に必要な技術を簡素化し、かつ標準化する。
- WP_Comment_Query::query()の新しいパラメーター:
- 'comment__in'
- 'comment__not_in'
- 'post_author__in'
- 'post_author__not_in'
- 'author__in'
- 'author__not_in'
- 'post__in'
- 'post__not_in'
- 'include_unapproved'
- 'type__in'
- 'type__not_in'
クラス
- wpdb::has_cap() - switch文に 'utf8mb4' case が追加
What's New
- 導入 WP_Customize_Control::get_content()
- 導入 WP_Customize_Control::json()
- 導入 WP_Customize_Control::print_template()
- 導入 WP_Customize_Manager::register_control_type()
- 導入 WP_Customize_Manager::render_control_templates()
- 導入 WP_Customize_Panel::active()
- 導入 WP_Customize_Panel::active_callback()
- 導入 WP_Customize_Panel::get_content()
- 導入 WP_Customize_Panel::json()
- 導入 WP_Customize_Section::active()
- 導入 WP_Customize_Section::active_callback()
- 導入 WP_Customize_Section::get_content()
- 導入 WP_Customize_Section::json()
- 導入 WP_Tax_Query::get_sql_for_clause()
- 導入 WP_Tax_Query::sanitize_query()
- 導入 WP_Tax_Query::sanitize_relation()
関数
- count_user_posts() /en - $post_type引数の追加
- get_ancestors() /en - $resource_type 引数の追加
- wp_die() /en - $title と $argsパラメータが were changed to optionally accept an integer to be used as the response code.
- wp_get_nav_menus() /en - 'orderby'句のデフォルト値が'none'から 'name'に変更となった。
- wp_make_link_relative() /en - relative URLのサポートが追加。
- wp_send_json_error() /en - $dataパラメータが WP_Errorオブジェクトが通過する場合に、処理される。
What's New
- get_the_archive_title() /en を導入
- get_the_archive_description() / en を導入
- get_the_post_navigation() /en を導入
- get_the_posts_navigation() /en を導入
- get_the_posts_pagination() / en を導入
- network_settings_add_js() /en を導入
- the_archive_description() / en を導入
- the_archive_title() /en を導入
- the_post_navigation() / en を導入
- the_posts_navigation() / en を導入
- the_posts_pagination() / en を導入
- wp_ajax_destroy_sessions() / en を導入
- wp_clean_update_cache() / en を導入
- wp_get_password_hint() / en を導入
- wp_json_encode() / en を導入
- wp_print_revision_templates() / en を導入
非推奨
- WP_Customize_Image_Control::prepare_control()
- WP_Customize_Image_Control::add_tab()
- WP_Customize_Image_Control::remove_tab()
- WP_Customize_Image_Control::print_tab_image()
アクション & フィルター
- $comment_ID パラメーターには以下のフィルターを追加:
- $commentパラメーターには comment_email フィルターを追加
- $author と $comment_ID パラメーターには get_comment_author_link フィルターを追加
- date_query_valid_columns フィルター内で user_registered をデフォルトの認識された列として追加
- $comment_ID と $comment パラメーターには以下のフィルターを追加:
- $post_type 引数には get_usernumposts フィルターを追加
- $depth パラメーターには以下のフィルターを追加:
- $user_login と $user_data パラメーターには retrieve_password_message フィルターを追加
- $this パラメーターには the_post アクションを追加
- $post_type パラメーターには wp_editor_expand フィルターを追加
- $size パラメーターには wp_get_attachment_image_attributes フィルターを追加
新規追加アクション
- customize_preview_{$this->type} を導入
- edit_form_before_permalink を導入
- pre_delete_term を導入
- wp_creating_autosave を導入
新規追加フィルター
- comment_reply_link_args を導入
- customize_panel_active を導入
- customize_section_active を導入
- default_page_template_title を導入
- get_the_archive_description を導入
- get_the_archive_title を導入
- image_add_caption_text を導入
- meta_query_find_compatible_table_alias を導入
- password_hint を導入
- pre_get_col_charset を導入
- pre_get_table_charset を導入
- process_text_diff_html を導入
- revision_text_diff_options を導入
- script_loader_tag を導入
- wp_get_revision_ui_diff を導入
- wp_save_post_revision_post_has_changed を導入
外部ライブラリ
- TinyMCE 4.1.7 へ更新
- getID3 1.9.8 へ更新
- MediaElement 2.16.2 へ更新
- Iris 1.0.7 へ更新
WordPress バージョンの一覧もあわせてご覧ください。
最新英語版: WordPress Codex » Version_4.1 (最新版との差分)