Bird
0
0

You want to create two menu locations in your theme: one for the header and one for the footer. Which code correctly registers both menus and displays them in the theme?

hard📝 Application Q15 of 15
Wordpress - Themes and Appearance
You want to create two menu locations in your theme: one for the header and one for the footer. Which code correctly registers both menus and displays them in the theme?
A<pre>function register_my_menus() { register_nav_menu('header', 'Header Menu'); register_nav_menu('footer', 'Footer Menu'); } add_action('init', 'register_my_menus'); // In header.php wp_nav_menu(array('theme_location' => 'header')); // In footer.php wp_nav_menu(array('theme_location' => 'footer'));</pre>
B<pre>register_nav_menus(array( 'header' => 'Header Menu', 'footer' => 'Footer Menu' )); // In header.php wp_nav_menu('header'); // In footer.php wp_nav_menu('footer');</pre>
C<pre>function register_my_menus() { register_nav_menus(array( 'header' => 'Header Menu', 'footer' => 'Footer Menu' )); } add_action('init', 'register_my_menus'); // In header.php wp_nav_menu(array('theme_location' => 'header')); // In footer.php wp_nav_menu(array('theme_location' => 'footer'));</pre>
D<pre>function register_my_menus() { register_nav_menus(array( 'header' => 'Header Menu', 'footer' => 'Footer Menu' )); } add_action('after_setup_theme', 'register_my_menus'); // In header.php wp_nav_menu(array('theme_location' => 'header')); // In footer.php wp_nav_menu(array('theme_location' => 'footer'));</pre>
Step-by-Step Solution
Solution:
  1. Step 1: Register multiple menus correctly

    Use register_nav_menus() with an array of locations inside a function hooked to after_setup_theme.
  2. Step 2: Display menus with correct syntax

    Use wp_nav_menu() with theme_location keys matching registered locations.
  3. Step 3: Check each option for correctness

    function register_my_menus() {
      register_nav_menus(array(
        'header' => 'Header Menu',
        'footer' => 'Footer Menu'
      ));
    }
    add_action('after_setup_theme', 'register_my_menus');
    
    // In header.php
    wp_nav_menu(array('theme_location' => 'header'));
    
    // In footer.php
    wp_nav_menu(array('theme_location' => 'footer'));
    correctly hooks registration to after_setup_theme, uses register_nav_menus(), and displays menus properly.
  4. Final Answer:

    Option D code correctly registers and displays both menus -> Option D
  5. Quick Check:

    Multiple menus = register_nav_menus + after_setup_theme + wp_nav_menu(theme_location) [OK]
Quick Trick: Use register_nav_menus with after_setup_theme hook [OK]
Common Mistakes:
  • Not hooking registration to after_setup_theme
  • Using wp_nav_menu() without theme_location array
  • Hooking registration to wrong action like init

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Wordpress Quizzes