is_nav_menu


WordPress関数is_nav_menu()は、指定されたナビゲーションメニューが存在するかどうかを確認するために使用されます。

構文

is_nav_menu( string $menu );

引数の説明:

  • $menu (string) — ナビゲーションメニューの名前、スラッグ、またはID。

例1: ナビゲーションメニューの存在確認

以下のコードは、特定のメニューが存在するかどうかを確認します。

<?php if ( is_nav_menu( 'primary' ) ) { echo 'メニューが存在します。'; } ?>

例2: 条件付きでメニューを表示

次のコードは、指定されたメニューが存在する場合にのみ、そのメニューを表示します。

<?php
if ( is_nav_menu( 'footer-menu' ) ) {
    wp_nav_menu( array( 'theme_location' => 'footer-menu' ) );
}
?>

例3: 複数のメニューを確認

複数のメニューを順番に確認し、存在する最初のメニューを表示します。

<?php
if ( is_nav_menu( 'header-menu' ) ) {
    wp_nav_menu( array( 'theme_location' => 'header-menu' ) );
} elseif ( is_nav_menu( 'main-menu' ) ) {
    wp_nav_menu( array( 'theme_location' => 'main-menu' ) );
}
?>

例4: カスタムメニュー登録の確認

次のコードは、カスタムメニューが登録されているかどうかを確認します。

<?php
if ( is_nav_menu( 'custom-menu' ) ) {
    echo 'カスタムメニューが存在します。';
}
?>

例5: メニューが存在しない場合の処理

メニューが存在しない場合に代替コンテンツを表示します。

<?php
if ( ! is_nav_menu( 'sidebar-menu' ) ) {
    echo '<p>ナビゲーションメニューが設定されていません。</p>';
}
?>

注意点

  • 引数$menuには、有効なナビゲーションメニューのスラッグ、名前、またはIDを指定してください。
  • 存在しないメニューを確認すると、falseを返します。

関連機能: