register_block_type_from_metadata

説明

WP_Block_Type | false register_block_type_from_metadata( string $file_or_folder [ , array $args = array() ] )
block.jsonファイルからブロックタイプを登録する。

パラメータ

  • $file_or_folder
    block.jsonファイルかそのディレクトリのパス名を指定。
  • $args
    ブロック定義を格納した連想配列を指定(省略時はarray())。以下は連想配列キーの抜粋。
    キー内容
    render_callbackサーバーサイドでブロックをレンダリングするコールバック関数
    textdomain[5.7.0]サポート
    variations[5.9.0]サポート
    viewScript[5.9.0]サポート
    render[6.1.0]サポート。サーバーサイドでブロックをレンダリングするコールバック関数のPHPファイルの相対パス名
    selectors[6.3.0]サポート
    blockHooks[6.4.0]サポート
    allowedBlocks[6.5.0]サポート
    viewScriptModule[6.5.0]サポート
    viewStyle[6.5.0]サポート

返り値

ブロックタイプを登録できた場合はそのWP_Block_Typeオブジェクトを返す。登録できなかった場合はfalseを返す。

注意

ブロック定義を記載したblock.jsonファイルを読み込み、ブロックタイプを登録する。ブロックタイプの諸設定はパラメータ$argsにより、キー単位で上書きできる。

[5.8.0]本関数は register_block_typeから呼び出されるようになった。

バージョンによりパラメータ$argsがサポートするキーが変わっている。


使用例

  • block.jsonファイルからブロックタイプを登録する
    register_block_type_from_metadata( $block_path, $attr );

フィルター

[5.7.0]block.jsonファイルの読み込み後'block_type_metadata'フィルターを呼び出す。パラメータ$metadataにはblock.jsonファイルをデコードした連想配列(キー'file'にはblock.jsonファイルのパス名追加済み)が格納されている。
$metadata = apply_filters( 'block_type_metadata', $metadata );
[5.7.0]ブロックタイプを登録する前に'block_type_metadata_settings'フィルターを呼び出す。パラメータ$settingsにはブロックタイプの設定内容を示す連想配列が、$metadataにはblock.jsonファイルをデコードした連想配列が格納されている。
$settings = apply_filters( 'block_type_metadata_settings', $settings, $metadata );

アクション

直接実行するアクションはありません。

ソースファイル

/wp-includes/blocks.php

最終更新 : 2024年05月17日 11:58



お勧め

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

Twenty Seventeenのフォントサイズを変更してみた(2021年12月15日 更新)

先日投稿した「続テーマを変更せずにWebフォントを使ってみた」では、テーマ「Twenty Seventeen」でもWebフォントを使えるようにした。その際、「Twenty Seventeen」のフォントサイズが少し小さく感じたので、今回はフォントサイズを調整してみた。

HTML entities button:プラグイン作ってみました(2021年4月28日 更新)

以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。

5.7の機能拡張:エクスポートファイルに更新日時が追加ほか(2021年2月23日 更新)

WordPressはサイト移行を支援する機能として投稿情報のエクスポート機能を備えている。5.7ではこのエクスポート機能が改良され、更新日時情報が追加されるようだ。

query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 更新)

先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。