ワードプレス 6.7 プラグインがブロックの登録を上げることができる新機能を導入wp_register_block_metadata_collection()
型のパフォーマンス、特に複数のブロック・タイプを登録するプラグインのパフォーマンスを向上させます。
![画像[1]-新しいブロックタイプ登録API:WordPress 6.7でパフォーマンスが向上 - Photon Flux|専門的なWordPressの修理サービス、グローバルなリーチ、迅速な対応](https://www.361sale.com/wp-content/uploads/2024/10/2024101802081176.png)
WordPressのコア動作をプラグインに拡張
WordPress 6.1以降、WordPress Coreはすべての組み込みブロックタイプを読み込む際のパフォーマンスを向上させるメカニズムを搭載しています。ブロック.json
ファイルはブロックjson.php
ファイルのすべてのデータを配列として返します。WordPressの各リクエストで高価なファイルシステムとJSONを多数実行する必要性を回避することにより、パフォーマンスが大幅に向上します。の運用を開始しました。当初の変更の背景については#55005.
![画像[2]-新しいブロックタイプ登録API:WordPress 6.7でパフォーマンスが向上 - Photon Flux|専門的なWordPress修理サービス、グローバルなリーチ、迅速な対応](https://www.361sale.com/wp-content/uploads/2024/10/2024101801555379.png)
しかし、この仕組みはWordPress Core自体にしか適用されません。これまでのところ、プラグインは同じ利点を実現できていません。特に、プラグイン自体に多くのブロックタイプが含まれている場合、これは事実上パフォーマンスの低下を意味します。これは WordPress 6.7 で変更される予定です。
登録ブロックメタデータ集
プラグインはオプションで PHP "品目リスト"ファイルを使用します。登録されているブロックタイプについて、WordPress Core はそのブロックタイプをカバーするマニフェストファイルが存在するかどうかをチェックし、存在する場合はブロック.json
ブロック型ファイルを直接読み取り、解析します。
この新機能を使用するには、プラグイン開発者は新しいwp_register_block_metadata_collection()
関数は2つの引数を取ります:
$パス
コレクションのブロックファイルがあるベースパス。1TP4マニフェスト
コレクションのマニフェストファイルへのパス。
みんなブロック.json
コレクションの一部となるべき文書は、すべて提供された$パス
ブロック・タイプ名と一致する(ブロック名前空間を含まない)独自のディレクトリにあります。
銘記ブロックメタデータのコレクションを登録しても、個々のブロックタイプを登録する必要性に取って代わるわけではありません。やはりregister_block_type()
もしかしたらregister_block_type_from_metadata()
.新機能の使用はパフォーマンス向上のために任意ですが、特に複数のブロックタイプを登録するプラグインでは、この機能を使用することを強くお勧めします。
![画像[3]-新しいブロックタイプ登録API:WordPress 6.7でパフォーマンスが向上 - Photon Flux|専門的なWordPress修理サービス、グローバルなリーチ、迅速な対応](https://www.361sale.com/wp-content/uploads/2024/10/2024101802114159.png)
ブロックメタデータ収集リストの自動生成
プラグイン開発者は、プラグインのブロックタイプのメタデータコレクションのために登録するマニフェストファイルを生成し、維持する責任があります。このプロセスを簡素化するために、コミュニティはNPMパッケージ新しいものが命令ビルドブロックマニフェスト
このコマンドはバージョン30.3.0の一部としてリリースされました。ワードプレス/スクリプト
ねばなりませんwp-scripts build-blocks-manifests
このコマンドは2つのパラメーターを受け付けます:
--入力
: ブロックタイプがあるディレクトリ。デフォルト値は "build"。--出力
: ビルド・ブロック・メタデータ・コレクション・マニフェストが格納されているファイルへのパス。デフォルトは "build/blocks-manifest.php" です。
実際、このコマンドのパラメーターはwp_register_block_metadata_collection()
::--入力
パラメータはパラメータと同等です。$パス
属--出力
パラメータはパラメータと同等です。1TP4マニフェスト
.
完全な例
この例ではマイ・ブロック・ライブラリー
3つのブロックタイプのプラグインを登録:
マイブロックライブラリー/プライシング
マイブロック図書館/サービス
マイ・ブロック・ライブラリー/お客様の声
これらのブロックタイプのソースコードは、プラグインのディレクトリに実装されています。ソース
具体的には以下のカタログに掲載されています:
src/pricing
使用マイブロックライブラリー/プライシング
ブロックsrc/サービス
使用マイブロック図書館/サービス
ブロックsrc/testimonial
使用マイ・ブロック・ライブラリー/お客様の声
ブロック
既存のwpスクリプトビルド
コマンドを実行すると、コードはプラグインのビルド
ディレクトリにあり、各ブロックタイプには同じサブディレクトリがあります。
![画像[4]-新しいブロックタイプ登録API:WordPress 6.7でパフォーマンスが向上 - Photon Flux|専門的なWordPress修理サービス、グローバルなリーチ、迅速な対応](https://www.361sale.com/wp-content/uploads/2024/10/2024101802121913.png)
ビルドを実行したら、新しいwp-scripts build-blocks-manifests
コマンドを使用します。プラグインはブロックタイプのデフォルトの場所を使うので、コマンドにパラメータを渡す必要はありません。単にwp-scripts build-blocks-manifests
それはブロック.json
カタログから3ブロックすべてのメタデータを読み込みます。ビルド
にマージします。build/blocks-manifest.php
ドキュメンテーション
マニフェストファイルは次のようになります:
array( /* メタデータをブロックします。 */ ), 'testimonial' => array( /* メタデータをブロックします。 */ ), 'testimonial' => array( /* メタデータをブロックします。
'testimonial' => array( /* メタデータをブロックします。 */ ), 'testimonial' => array( /* メタデータをブロックします。 */ )
).
今後、ブロックタイプとその実装に変更を加える場合、同じ2つのコマンドを使用できます:
wp-scripts build
wp-scriptsビルドブロックマニフェスト
マニフェスト・ファイルを生成したら、次のようにブロック・メタデータ・コレクションを登録します:
wp_register_block_metadata_collection(
wp_plugin_dir . '/my-block-library/build'、
wp_plugin_dir . '/my-block-library/build/blocks-manifest.php'
);
最後の重要なポイントとして、実際のブロックタイプを登録することを忘れないでください:
register_block_type_from_metadata( WP_PLUGIN_DIR . '/my-block-library/build/pricing' ).
register_block_type_from_metadata( WP_PLUGIN_DIR . '/my-block-library/build/services' ); register_block_type_from_metadata( WP_PLUGIN_DIR .
register_block_type_from_metadata( WP_PLUGIN_DIR . '/my-block-library/build/testimonial' ); register_block_type_from_metadata( WP_PLUGIN_DIR .
![画像[5]-新しいブロックタイプ登録API:WordPress 6.7でパフォーマンスが向上 - Photon Flux|専門的なWordPress修理サービス、グローバルなリーチ、迅速な対応](https://www.361sale.com/wp-content/uploads/2024/10/2024101802124064.png)
概要
新機能wp_register_block_metadata_collection()
およびそのツールサポートワードプレス/スクリプト
は、プラグインの登録ブロックタイプのパフォーマンスを向上させるための強力な組み合わせです。プラグインがブロックタイプを登録する場合、開発ワークフローとプラグインコードベースにこのアプローチを取り入れることを検討してください。
お問い合わせ |
---|
記事が読めない?無料でお答えします!個人サイト、中小企業サイトのための無料ヘルプ! |
① 電話:020-2206-9892 |
② QQ咨询:1025174874 |
三 Eメール:info@361sale.com |
④ 勤務時間: 月~金、9:30~18:30、祝日休み |
この記事へのリンクhttps://www.361sale.com/ja/21715
この記事は著作権で保護されており、必ず帰属表示を付けて複製してください。
コメントなし