register_block_type()


WordPress関数register_block_type()は、カスタムブロックを登録するために使用されます。この関数を使用することで、独自のブロックを作成してテーマやプラグインに追加できます。

構文

register_block_type( string $block_name, array $args = array() );

引数の説明:

  • $block_name (string) — 登録するブロックの名前。通常「namespace/block-name」の形式で指定します。
  • $args (array) — ブロックの設定を含む連想配列。

$argsで指定できる主な項目:

  • render_callback (callable) — サーバーサイドでレンダリングするコールバック関数。
  • attributes (array) — ブロック属性の設定。
  • editor_script (string) — ブロックエディタで使用されるJavaScriptファイルのハンドル名。
  • style (string) — フロントエンドで使用されるCSSのハンドル名。

例 1: シンプルな静的ブロックを登録

register_block_type( 'custom/static-block', array(
    'editor_script' => 'static-block-script',
) );

例 2: サーバーサイドレンダリングブロック

register_block_type( 'custom/dynamic-block', array(
    'render_callback' => function( $attributes ) {
        return '<div>これは動的なブロックです。</div>';
    },
) );

例 3: 属性を使用するカスタムブロック

register_block_type( 'custom/attribute-block', array(
    'attributes' => array(
        'content' => array(
            'type' => 'string',
            'default' => 'デフォルトテキスト',
        ),
    ),
    'render_callback' => function( $attributes ) {
        return '<p>' . esc_html( $attributes['content'] ) . '</p>';
    },
) );

例 4: カスタムスタイルを持つブロック

register_block_type( 'custom/styled-block', array(
    'style' => 'styled-block-css',
    'editor_script' => 'styled-block-editor-script',
) );

例 5: カスタムスクリプト付きのブロック

register_block_type( 'custom/scripted-block', array(
    'editor_script' => 'scripted-block-editor-js',
    'editor_style' => 'scripted-block-editor-css',
) );

注意事項

  • ブロック名は一意である必要があります。
  • editor_scriptstyleで指定するハンドル名は、WordPressのwp_register_script()wp_register_style()を使用して登録してください。
  • 必要に応じて、レンダリングコールバック関数内で入力のサニタイズを行うようにしてください。

関連機能: