2022年04月25日

WP関数:register_nav_menu()

この関数の説明

WP関数の register_nav_menu() は、ナビゲーションメニューを1つ設定する関数です。

 


関数

register_nav_menu( $location$description)

注意

似ている関数でregister_nav_menus( $location )があります。

これはナビゲーションメニュを複数設定する関数です。

詳細は下段の参考情報を見て下さい。

 


パラメータ

$location(文字列) (必須)

メニュのロケーション名を指定します

 

$description(文字列) (必須)

ロケーション名の説明文を入力します。

 


戻り値

この関数は値を戻しません。

 


利用例

main_menusub_menuの2つのロケーション名の設定を行います。

function my_menu() {
  register_nav_menu( 'main_menu' , '基本メニュー(main_menu)' );
  register_nav_menu( 'sub_menu'   , 'サブメニュー(sub_menu)');
}
add_action( 'after_setup_theme' , 'my_menu' );

■上記の設定で[外観→メニュ]の[メニューの位置]に下図が表示されます。

■上段に✔すると作成したメニュを[main_menu]で呼び出せる様になります。

上記を呼び出す方法は下記になります。

<div id='top_menu' >
	<?php 
       $menu = ['theme_location' => 'main_menu' ];
       wp_nav_menu( $menu ); 
    ?>
</div>

また、上記のメニュが設定されているか否かは has_nav_menu で確認できます。

 


参考情報

上記と同じ設定をregister_nav_menus()で行うと下記の様になります。

function my_menu() {
  register_nav_menus(array(
  	'main_menu' => '基本メニュー(main_menu)',
  	'sub_menu'   => 'サブメニュー(sub_menu)',
  ));
}
add_action( 'after_setup_theme', 'my_menu' );

 


関連情報

関連関数は メニュー関連関数 を参照してください。

 

アクションフック&関数
  • admin_init
  • admin_menu
  • after_setup_theme
  • customize_register
  • manage_pages_custom_column
  • manage_posts_custom_column
  • pre_get_posts
  • save_post
  • widgets_init
  • wp_enqueue_scripts
  • wp_head
  • add_editor_style()
  • add_post_type_support()
  • add_theme_support()
  • do_action()
  • get_post()
  • get_theme_mod()
  • register_nav_menu()
  • register_post_type()
  • register_sidebar()
  • register_taxonomy()
  • register_widget()
  • remove_action()
  • remove_editor_styles()
  • remove_theme_support()
  • set_post_thumbnail_size()
  • set_query_var()
  • show_admin_bar()
  • unregister_nav_menu()
  • unregister_widget()
  • wp_enqueue_script()
  • wp_enqueue_style()