register_block_core_navigation_submenu()


WordPressのregister_block_core_navigation_submenu()関数は、ナビゲーションブロック内にサブメニューを登録するために使用されます。この関数は、ブロックエディターでカスタムナビゲーションメニューを作成する際に役立ちます。

構文

register_block_core_navigation_submenu( array $args );

引数の説明:

  • $args(array) — サブメニューの設定を含む配列。以下のキーを持つことができます:
    • 'name'(string) — サブメニューの名前。
    • 'parent'(string) — 親メニューの名前。
    • 'attributes'(array) — サブメニューの属性。

例1: 基本的なサブメニューの登録

この例では、シンプルなサブメニューを登録します。

register_block_core_navigation_submenu( array( 'name' => 'サブメニュー1', 'parent' => 'メインメニュー' ) );

例2: 属性を指定してサブメニューを登録

サブメニューにカスタム属性を追加します。

register_block_core_navigation_submenu( array( 'name' => 'サブメニュー2', 'parent' => 'メインメニュー', 'attributes' => array( 'custom_attr' => 'value' ) ) );

例3: 複数のサブメニューを登録

複数のサブメニューを一度に登録します。

register_block_core_navigation_submenu( array( 'name' => 'サブメニューA', 'parent' => 'メインメニュー' ) ); register_block_core_navigation_submenu( array( 'name' => 'サブメニューB', 'parent' => 'メインメニュー' ) );

例4: 動的なサブメニュー名

動的に生成された名前を使用してサブメニューを登録します。

register_block_core_navigation_submenu( array( 'name' => '動的サブメニュー' . time(), 'parent' => 'メインメニュー' ) );

例5: 親メニューを動的に指定

親メニューを動的に指定してサブメニューを登録します。

register_block_core_navigation_submenu( array( 'name' => 'サブメニュー3', 'parent' => get_option( 'main_menu_name' ) ) );

例6: サブメニューにカスタムクラスを追加

サブメニューにカスタムクラスを追加します。

register_block_core_navigation_submenu( array( 'name' => 'サブメニュー4', 'parent' => 'メインメニュー', 'attributes' => array( 'className' => 'custom-class' ) ) );

例7: サブメニューの表示条件を設定

特定の条件下でのみサブメニューを表示します。

if ( is_user_logged_in() ) { register_block_core_navigation_submenu( array( 'name' => 'ユーザー専用サブメニュー', 'parent' => 'メインメニュー' ) ); }

注意点

  • この関数は、ブロックエディターが有効な場合にのみ動作します。
  • 親メニューが存在しない場合、サブメニューは登録されません。
  • サブメニューの名前は一意である必要があります。

関連機能: