2022年04月25日

WP関数:unregister_nav_menu()

この関数の説明

WP関数の unregister_nav_menu() は、親テーマの中で設定されているロケーション名を子テーマの中で削除する関数です。

 

※この関数はアクションフック:after_setup_theme の中で利用します。

 


関数

unregister_nav_menu( $location )

 


パラメータ

$location(文字列) (必須)

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

 


返り値

成功した場合はtrue、失敗した場合はfalseを返します。

 


事例

①親テーマのロケーション名を削除して、新しいロケーション名を設定します。

親テーマの設定が下記とします。

function basic_setup() {
	register_nav_menus( array(
		'header' => __( 'Header Navigation', 'usces' ),
		'footer' => __( 'Footer Navigation', 'usces' ),
	) );
add_action( 'after_setup_theme', 'basic_setup' );

上記の'header''footer'を削除し新たに設定する為には子テーマの[functions.php]に下記を記述します。

function my_setup() {
	unregister_nav_menu( 'header' );
	unregister_nav_menu( 'footer' );
	register_nav_menu( 'main_menyu' , '基本メニュー(main_menu)' );
	register_nav_menu( 'sub_menu'     , 'サブメニュー(sub_menu)');
}
add_action('after_setup_theme' , 'my_setup',20);

■ポイントは7行目の実行優先順位を10以上に値にすることです。

以上で新しいロケーション名が設定されます。

 

アクションフック&関数
  • 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()