6.4がリリースされます。今回も新バージョンの注目の機能と改善点が気になるところ。気になる機能としては、ブロックフック、パターン構成の改善、コマンドパレットの再設計と強化、添付ファイルページの無効化、画像のLightbox機能、および執筆ワークフローの改善など。テンプレートやスクリプトローディングストラテジーの改善、その他のパフォーマンス強化により、WordPressサイトがより高速になります。リストビューの強化や管理ユーザーインターフェースの改良も施されており、使い勝手も向上しています。編集プロセスの効率化に貢献するパターンやテンプレートが多数搭載された新デフォルトテーマも見逃せません。6.4の新機能や改善点を詳しく見ていきましょう。ブロックフックブロックフック(以前は自動挿入ブロックと呼ばれていたもの)によって、プラグインがGutenbergエディターと自動的にやり取りできるようになります。具体的には、コンテンツに別のブロックが追加されると、ブロックが特定の位置に自動で配置されるようになりました。ブロックフックの動作には、以下2つの原則があります。エディターにブロックを挿入する手間を省き、フックされたブロックを提供するプラグインが有効化されると同時に、フロントエンドにブロックが挿入される。プラグインが無効化されると、ブロックも自動的に削除される。ブロックがエディターに表示され、自動挿入についての管理を行うことができる。この両方の原則を考慮し、コードに含まれる情報を保持するため、ブロックフックは未修正のテンプレートとテンプレートパーツ、およびテーマが提供するパターン、パターンディレクトリからコピーされたパターン、またはregister_block_pattern関数で登録されたパターンのみで機能します。投稿コンテンツ、変更されたテンプレートとテンプレートパーツ、ユーザーが作成したパターンで動作することはありません。開発者ノートでは、次のように述べられています。6.4では、保存機能を持つブロックを自動的に挿入することはできません。しようとすると、ブロック検証エラーが発生します。わかりやすく言えば、ブロックフックは静的ブロックではなく、動的ブロックで動作することになります。(英語原文の和訳)静的ブロックと動的ブロックの詳細はこちらをご覧ください。ブロックフックの実装には、block.jsonファイルを使う手法とhooked_block_typesフィルターを使う手法の2通りがあります。block.jsonを使用したブロックフックblock.jsonを使用すると、サードパーティーのブロックを手っ取り早く簡単にフックできますが、柔軟性に欠けるのが難点です。block.json経由で自動で挿入されたブロックは、対象となるすべてのインスタンスに無条件で追加されます。blockHooksプロパティは、キーと値のペアのオブジェクトを取り、キーはフックしたいブロック名、値はターゲットブロックからの相対的な位置を指定します。この位置については、以下のいずれかを指定できます。ターゲットブロックのbefore(前)ターゲットブロックのafter(後)ターゲットコンテナブロックのfirstChild(最初の子要素)ターゲットコンテナブロックのlastChild(最後の子要素)例えば、blockHooksを使用して、すべてのスペーサーブロックにブロックをフックすることができます。'after'}}block.jsonでfirstChildまたはlastChildを使用すると、ブロックインスペクターに新たに導入されたプラグインパネルに、自動で挿入されるブロックが一覧として表示され、自動挿入の有効化/無効化のトグルが操作できるようになります。自動挿入の有効化(画像出典:PR#52969)hooked_block_typesを使用したブロックフックhooked_block_typesフィルターを使用すると、block.jsonを使った手法のように無条件にブロックをフックすることも、条件に基づいてフックすることも可能です。ブロックが配置されているテンプレート、テンプレートパーツ、パターンによって、ブロックを対象にフックすることができます。hooked_block_typesのコールバック関数は、以下4つのパラメータを受け取ります。$hooked_blocks─フックされたブロックの配列$position─before、after、first_child、last_childのいずれか$anchor_block─アンカーブロック名$context─アンカーブロックが属するブロックテンプレート、テンプレートパート、またはパターンブロックフックの技術的な詳細については、開発者ノートを参照してください。パターンシステムの強化ブロックパターンは、コンテンツやテンプレートで使用できる強力なデザインツールで、複雑な構造のブロックを簡単に構築できます。ブロックテーマに付帯するパターンを使用することもできれば、パターンディレクトリからコピーして追加することも可能です。サイト/投稿エディターのインターフェースでゼロからパターンを作成したり、コーディング経験があれば、.phpファイルで現在のテーマや子テーマにパターンを追加したりすることも可能です。パターンは現在、WordPressの核となる機能です。ブロックパターンに関する詳細はこちらでご紹介しています。6.4における、パターンシステムの新機能を見ていきましょう。これまでのWordPressでは、パターンを新規作成する際、パターン名とタイプ、同期の有無しか設定できませんでした。6.4からは、パターンにカテゴリーを追加できるようになっており、サイトや投稿エディターで識別しやすくなっています。6.4のパターン作成ウィンドウまた、パターンの編集時にカテゴリーを変更することも可能です。パターンカテゴリーの編集さらに、ブロックインサーターの「同期パターン」タブがなくなり、1つの「パターン」タブからすべてのパターンの管理が行えるようになっています。6.4(右)のブロックインサータータブの比較また、サイトエディターからJSONとしてパターンをインポートまたはエクスポートするのも簡単になりました。サイトエディターからJSONとしてパターンをエクスポートする追加の変更により、クラシックテーマとのパターンの互換性も向上しています。Twenty-Four」が登場します。多機能でありながらミニマルなWordPressテーマで、主に中小企業、写真家とアーティスト、作家とブロガーという3つの用途を想定して設計されています。Twenty-Four」は、サイトに機能を追加するのではなく、様々な種類のウェブサイトを構築するのに役立つテンプレートとパターンを集めたテーマといった様相です。要件に合わせて編集できるページ構成例も豊富に用意されており、デフォルトのコンテンツも充実しています。Twenty-Four」についてはこちらをご覧ください。6.4には、新しいデザインツールと機能がいくつか標準で搭載されています。以下は特に気になる機能です。コンテンツブロックの色設定コンテンツブロックは、クエリループブロックの子ブロックで、クエリループ内のコンテンツの外観を変えるのに特に便利です。クエリループブロックで使用できるコンテンツブロッククエリループを編集しているときは投稿エディターで、テンプレートを作成または編集しているときはサイトエディターで利用可能です。6.4では、このコンテンツブロックが改良されており、テキスト、背景、リンクの色を変更できるようになっています。背景画像ブロック背景画像ブロックが導入され、デフォルトでグループブロックで利用できる仕様になっています。使用しているテーマがtheme.jsonでappearanceTools機能を使用している場合、背景画像ブロックに対応する管理セクションと背景画像のプレビューが表示されます。coverが追加されます。テーマに背景画像のサポートを実装するには、2つの方法があります。簡単なのは、appearanceToolsプロパティを選択する方法で、背景画像を含む複数のデザイン機能が有効になります。デザインをより細かく制御するには、theme.jsonのbackgroundImageプロパティを使用できます。Click」(クリックで拡大)トグルを使うと、Lightbox機能を有効または無効にできます。今回のこの機能は、あくまでも最初のバージョンであり、今後さらに改善されていくことが予想されます。Click」をクリックして画像のLightbox機能を有効化Lightbox機能は、デュオトーンフィルターでも動作しますが、画像ギャラリーに関しては少しわかりにくく、本記事の執筆時点では、ギャラリーレベルでLightbox機能を有効にすることはできません。個別の画像で有効にする操作が必要になります。以前のWordPressバージョンでは、この機能の実装にプラグインが必要でしたが、今回のリリースで標準搭載になり、WordPressサイトのサードパーティに依存するコードを削減することができます。縦書きテキスト新たなテキストの向きも導入され、テーマで縦書きのテキストをサポートできるようになりました。使用しているテーマがこの機能に対応している場合は、「タイポグラフィ」設定でテキストの向きを右から左の縦書きに変更することができます。テキストの縦書き設定デフォルトではこの機能は無効になっているため、テーマ開発者はtheme.jsonにwritingMode設定を追加する必要があります。true}}}特定のブロックに対して異なるデフォルト動作を設定することもできます。以下は、すべての段落ブロックにvertical-rlを設定する例です。6.4では、脚注ブロックにも改良が加えられており、リンク、背景、テキストの色を変更できるようになりました。タイポグラフィ、寸法、境界線の管理も可能です。脚注ブロックの色、タイポグラフィ、寸法、境界線の設定テキストとリンクの色の設定セクションがデフォルトで展開され、その他の設定はページ読み込み時に折りたたまれる仕様です。ナビゲーションブロック内へのボタンの追加ナビゲーションブロックで使用できる要素にボタンが追加されました。メニュー項目をボタンに変換メニュー項目作成時に、ブロックツールバーから簡単にボタンに変換できます。6.4では、エディターのインターフェースも改善されており、編集体験の向上とワークフローの合理化が期待できます。以下、いくつか改善点を厳選してご紹介します。6.3で初めて登場したコマンドパレットは、サイトエディターのインターフェースで頻繁に使用するアクションを実行できる機能です。6.4では、デザインの変更やその他の改善によって、レベルアップしています。6.3と6.4のコマンドパレットの動作の比較です。6.4では、コマンドが増えているほか、名称の変更もあり、一貫性が高まっています。新たに導入されたコマンドの一例です。した変更点としては、多くのコマンド名から動詞が削除(「〜を開く」など)されています。これにより、コマンドの検索性が上がっており、作業がより捗りそうです。6.4で「open」(開く)を検索してみた結果また、ブロック選択のコマンドも導入されました。k(Windows)を押して、「transform」(変換)などの検索キーを入力すると、以下のような候補が表示されます。ブロック選択コマンド複数のブロックにコマンドを実行できます。いくつものブロックをグループ化するといった操作が簡単に実行可能です。選択した複数のブロックをグループ化また、グループ化を解除することもできます。グループに変換」「グループ解除」「変換」のブロック選択コマンドがあります。リストビューの改良リストビューでは、ページの内容を確認し、ブロック、グループ、パターンに対してコピー、複製、グループ化などを行うことができます。アイテムのグループを展開または折りたたむことも、単一のブロック、グループ、パターンに対して複数の操作を行うことも可能で、ネストしたブロックの複雑な構造を扱う際に特に有用です。d)を使って、ブロックのグループ名の変更、ギャラリーや画像ブロックのプレビュー、ブロックの複製もできるようになっています。複数の子ブロックを含むブロックを編集する際、内側のブロックを操作するのは簡単ではありません。ナビゲーションブロックではこの傾向が顕著です。以前のバージョンでは、内側のブロックを選択すると、ブロックツールバーが画面上の別の位置に移動します。この動作は、ナビゲーションブロックやリストブロックのユーザー体験を損ねていました。6.4からは、子ブロックのツールバーは親の位置に固定されるようになっています。これで子ブロック間で選択を切り替えても、ツールバーが動くことはありません。リストブロックのツールバーリスト内の項目を選択この機能は現時点で、ナビゲーションブロック、リストブロック、および引用ブロックに実装されています。他にもテーマ開発者向けの変更点や、100以上のパフォーマンス改善がコアにマージされています。いくつかピックアップして見てみましょう。6.3で導入された機能です。asyncとdefer属性が、スクリプトの依存関係ツリーにおいて予期せぬ順序でスクリプトが読み込まれるのを回避します。6.4では、コアテーマとバンドルテーマのフロントエンドスクリプトに実装されています。6.4から、defer属性で読み込まれるスクリプトがフッターからheadに移動しています。これにより、ドキュメントの読み込み中により早く検出され、読み込み後はより迅速に実行できるようになりました。その他の変更により、コアのセキュリティと保守性も向上しています。スクリプトの読み込みに関する技術的な情報はこちらをご覧ください。6.4から、新規インストールしたWordPressの添付ファイルページが完全に無効化されます。これまでは、アップロードされたすべてのマルチメディアファイルに対して、添付ファイルページが自動生成されていましたが、ほとんどのウェブサイトで不必要でした。このページは検索エンジンにインデックスされてしまい、ユーザー体験に悪影響を与えることも。6.4からは、wp_attachment_pages_enabledデータベースオプションが、添付ファイルページの動作を制御します。(添付ファイルページ無効)に設定されています。この値は、WP-CLIで変更できます。0|1または、サイトのwp-admin/options.phpにアクセスし、wp_attachment_pages_enabledの値を変更してもOKです。添付ファイルページオン/オフの設定を変更プログレスバーの導入サイトエディターでコンテンツを読み込む際に使用されていたSpinner要素を置き換えるものとして、シンプルな水平方向のProgressBarが導入されました。6.4以前のバージョンでは、_register_theme_block_patterns()関数によって、使用中のテーマに付随するパターン(patternsディレクトリ内のもの)が登録されていました。Twenty-Four」のような膨大な量のパターンを搭載するテーマでは大きな懸念になります。この関数によって、後続のリクエストはファイルを検索する必要がなくなり、パフォーマンスの大幅な改善が期待できます。テーマの開発モードを有効にするか、テーマのバージョン番号を更新するか、テーマを切り替えるか、あるいはWP_Theme::delete_caches()メソッドを呼び出すことで、パターンキャッシュをバイパスすることができます。APIのいくつかの関数は、親テーマにフォールバックする前に、子テーマ内のファイルの存在確認を実行していました。これは、関数が現在のテーマが子テーマであるかどうかを考慮していなかったために起こる挙動です。APIのいくつかの関数とメソッドが更新され、ファイルの有無を確認する前に現在のテーマのスタイルシートディレクトリがテンプレートディレクトリと一致するかどうかを検証するようになりました。これにより、特に非子テーマにおけるパフォーマンスが大幅に向上するはずです。その他のパフォーマンスの改善として、get_block_theme_folders()とthe_header_image_tag()関数も導入されました。オプション機能オプション機能は、デフォルトで読み込まれるようになっています。サイトのオプションが多すぎると、サーバーの応答時間が長くなったり、バグが発生したりする可能性があります。この動作を防ぐため、オプションを管理し、異なるデフォルトの動作を設定するための新たな関数が導入されました。これによって、パフォーマンスの改善が期待できます。1つのデータベースクエリで複数のオプションを取得できる2つの関数です。prime_options()は、単一のデータベースクエリで複数のオプションを取得できます。オプションの値はキャッシュに保存されるため、それ以降のget_option()呼び出しでデータベースクエリが追加で必要になることはありません。prime_options()はオプション名の配列を受け取ります。オプションの値は返しません。その役割は、関連するキャッシュを更新することに限定されます。prime_options_by_group()は、prime_options()と同じように動作しますが、特定のオプショングループに対応する関数となります。オプションの自動読み込み値を設定することができます。wp_set_option_autoload_values()を使用すると、1つのオプションに対する自動読み込み値を設定可能です。wp_set_options_autoload_values()を使用すると、複数のオプションの自動読み込み値を設定できます。その他の開発者向けの変更点その他の開発者向けの変更点には、以下のようなものがあります。6.4は、2023年3回目となるメジャーリリースです。新たな機能とデザインツール、UIの改善、バグ修正、その他小さな変更点が多数もたらされています。軽量で多機能なデフォルトテーマも新たに導入され、数々のパターンとテンプレートが使用できることから、特定の用途に合わせて柔軟にカスタマイズするのにうってつけです。6.4のベータ版はもう試されましたか?WordPressコミュニティに貢献したり、テストしたりするなら、無料のローカルWordPress開発ツール「DevKinsta」が役に立つはずです。6.4で特に気に入った機能があれば、以下のコメント欄でぜひお聞かせください。すべてのWordPress専用マネージドホスティングプランに付帯する、実質300ドル以上のエンタープライズレベルの統合により、手間と費用を削減し、サイトパフォーマンスを最大化します。これには高性能CDN、DDoS対策、マルウェア&ハッキング対処、エッジキャッシュ、Google最速CPUマシンが含まれます。長期契約の縛り無し、移行支援あり、30日間返金保証。ご安心の上ご利用ください。プラン一覧をご覧になるか、お客様のご要望について営業までお気軽にお問い合わせください。Kinstaウェブデザインとフロントエンド開発をこよなく愛し、WordPress歴は10年以上。イタリアおよびヨーロッパの大学や教育機関とも共同研究を行う。WordPressに関する記事を何十件も執筆しており、イタリア国内外のウェブサイトや雑誌に掲載されている。詳しい仕事情報はXとLinkedInで公開中。ウェブサイトTwitter関連記事とトピック【共用サーバーを超える】WordPress専用マネージドホスティングKinstaのWordPress専用マネージドホスティングは、すべてのプランに比類のないサイトパフォーマンスを実現する、エンタープライズレベルの機能が付帯。投稿タイプページコンテンツタイプ動画もっと詳しく2024最速WordPressテーマ16選(怒濤の計測・テスト結果)読み込み速度最速のWordPressテーマを一挙ご紹介します。コメントをキャンセル【コメントに関する方針】皆様のコメントに感謝申し上げます。ご意見がございましたらお気軽にお聞かせください。すべてのコメントが手動でモデレートされ、スパムや宣伝とみなされるものは削除されますので予めご了承ください。メールアドレスが公開されることはありません。※このフォームを送信することにより、米国へのデータ転送を含む、Kinstaの個人情報保護方針に従ったデータ送信など、個人データの処理に同意したことになります。Inc.が所有する登録商標です。Inc.の知的財産です。Inc.による推奨や承認を意味するものではありません。Inc.により認定、所有されておらず、関連会社でもありません。