get_nav_menu_locations() の使い方|説明・引数・注意点

説明

get_nav_menu_locations() は、ロケーションに割り当てられているメニューのIDを返す関数です。

基本構文

get_nav_menu_locations(): int[]

引数

引数はありません。

戻り値

ロケーション名をキー、メニューIDを値とする配列。

使い方(サンプル)

$locations = get_nav_menu_locations();

注意点

  • ロケーションからメニューIDを取得するときに使います。

実務での使いどころ

  • 場所(header など)に、割り当てられた、メニューのIDを、調べるとき。

よくあるミスと対処

  • 場所が、割り当てられていないとき、そのキーが、存在しない。確認せずに使う。
  • メニューの項目が欲しいのに、これだけを使っている。IDから項目を取得するには、wp_get_nav_menu_items() を使う。

NG例

$id = get_nav_menu_locations()['header']; // 割り当てが無いと、エラーになる

OK例

$locations = get_nav_menu_locations();
if ( ! empty( $locations['header'] ) ) {
	$menu_id = $locations['header'];
}

使い分け早見表

関数 役割
get_nav_menu_locations() 場所と、メニューのIDの対応を、取得する
wp_get_nav_menu_items() メニューの項目を、配列で取得する
has_nav_menu() 場所に、メニューが割り当てられているかを確認する

関連項目

wp_get_nav_menu_items()、register_nav_menus()

公式リファレンス:get_nav_menu_locations() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました