概要
get_dynamic_block_namesフィルタは、WordPressのダイナミックブロックの名前を取得・変更するために使用されます。このフィルタを使用することで、プラグインやテーマが提供する独自のブロックの名前を追加したり、既存のブロックの名前を変更したりすることができます。このフィルタは、特にカスタマイズ性を向上させる目的でよく利用されます。
このフィルタを使用する主な機能には以下のようなものがあります:
- ダイナミックブロックのカスタム登録
- 既存ブロック名の変更
- 特定条件に応じたブロック名の有効化・無効化
- プラグインの機能追加のためのブロック名の拡張
- テーマによるオリジナルブロック名の設定
- ユーザー役割に基づくブロックの制限
- エディタでのブロック表示のカスタマイズ
- デバッグや開発時のブロック表示の検証
構文
add_filter( 'get_dynamic_block_names', 'your_function' );
パラメータ
dynamic_block_names(array): 現在のダイナミックブロックの名前の配列
戻り値
- (array): 変更されたダイナミックブロック名の配列
関連する関数
https://refwp.com/?titleonly=1&s=get_dynamic_block_names
使用可能なバージョン
このフィルタは、WordPress 5.0以降で使用可能です。
コアファイルのパス
wp-includes/blocks.php
サンプルコード
サンプルコード1
add_filter( 'get_dynamic_block_names', function( $block_names ) {
$block_names[] = 'custom/block';
return $block_names;
});
このコードは、custom/blockという新しいダイナミックブロックの名前を追加します。
サンプルコード2
add_filter( 'get_dynamic_block_names', function( $block_names ) {
if ( ! current_user_can('editor') ) {
$block_names = array_diff( $block_names, array('restricted/block') );
}
return $block_names;
});
このコードは、ユーザーがエディターの権限を持っていない場合、restricted/blockをダイナミックブロック名から削除します。
サンプルコード3
add_filter( 'get_dynamic_block_names', function( $block_names ) {
foreach ( $block_names as $key => $name ) {
if ( $name === 'old/block' ) {
$block_names[ $key ] = 'new/block';
}
}
return $block_names;
});
このコードは、old/blockの名前をnew/blockに変更します。
サンプルコード4
add_filter( 'get_dynamic_block_names', function( $block_names ) {
return array_merge( $block_names, array('additional/block1', 'additional/block2') );
});
このコードは、additional/block1およびadditional/block2をダイナミックブロック名に追加します。
サンプルコード5
add_filter( 'get_dynamic_block_names', function( $block_names ) {
return [];
});
このコードは、すべてのダイナミックブロック名を削除し、空の配列を返します。
この関数のアクションでの使用可能性
| アクション | 使用可能性 |
|---|---|
| mu_plugin_loaded | |
| registered_post_type | |
| plugins_loaded | |
| wp_roles_init | |
| setup_theme | |
| after_setup_theme | |
| set_current_user | |
| init | |
| register_sidebar | |
| wp_loaded | |
| send_headers | |
| parse_query | |
| pre_get_posts | |
| wp | |
| template_redirect | |
| get_header | |
| wp_head |
特定のワードプレスバージョンでの非推奨または削除情報
特に非推奨または削除されたワードプレスバージョンはありません。