wp_get_nav_menus()


関数WordPresswp_get_nav_menus()は、登録されているすべてのメニューのリストを取得するために使用されます。

構文

wp_get_nav_menus();

この関数は、現在登録されているすべてのナビゲーションメニューを配列として返します。各メニューはオブジェクトとして表され、以下の情報を含みます:

  • term_id (int) — メニューのID。
  • name (string) — メニューの名前。
  • slug (string) — メニューのスラッグ。
  • term_group (int) — タームグループID。
  • term_taxonomy_id (int) — タームタクソノミーID。
  • taxonomy (string) — タクソノミーの種類(通常はnav_menu)。
  • description (string) — メニューの説明。
  • count (int) — メニューに関連付けられているアイテムの数。

例 1: すべてのメニューのリストを取得する

現在登録されているすべてのメニューをループで取得し、名前を表示する例です。

<?php
$menus = wp_get_nav_menus();
foreach ( $menus as $menu ) {
    echo $menu->name;
}
?>

例 2: 特定のメニューIDを取得する

特定のメニューのterm_idを取得する例です。

<?php
$menus = wp_get_nav_menus();
$menu_id = isset( $menus[0] ) ? $menus[0]->term_id : null;
echo $menu_id;
?>

例 3: メニューのスラッグを取得して表示する

すべてのメニューのスラッグを取得して表示します。

<?php
$menus = wp_get_nav_menus();
foreach ( $menus as $menu ) {
    echo $menu->slug;
}
?>

例 4: メニューの説明を出力する

メニューの説明を取得して表示する方法を示します。

<?php
$menus = wp_get_nav_menus();
foreach ( $menus as $menu ) {
    echo $menu->description;
}
?>

注意事項

  • この関数はメニューが登録されていない場合、空の配列を返します。
  • テーマまたはプラグインで使用する場合は、適切に条件分岐を行い、エラーを防ぐようにしてください。
  • wp_get_nav_menus()は管理者権限が必要ありませんが、メニューを操作する際は十分注意してください。

関連機能: