Как мне создать меню и назначить его на место с помощью хука в WordPress? - PullRequest
0 голосов
/ 07 мая 2019

В моей теме я добавляю меню при активации темы, используя

add_action( 'after_setup_theme', 'mycustom_register_menu' );
function mycustom_register_menu() {
    register_nav_menu( 'somelocation', __( 'My Menu') );
}

Я добавил местоположение в header.php моей темы, теперь осталось только создать меню в панели инструментов и назначить его этому месту. Это прекрасно работает, когда я делаю это вручную.

Мой вопрос: как я могу автоматизировать это? поэтому, когда тема активирована и в качестве местоположения добавлено «Мое меню», создается меню с определенным именем и назначается этому местоположению? Есть ли для этого крючок?

1 Ответ

0 голосов
/ 07 мая 2019
  1. Создание пользовательских меню навигации в теме WordPress

    function wpb_custom_new_menu() {
      register_nav_menu('my-custom-menu',__( 'My Custom Menu' ));
    }
    add_action( 'init', 'wpb_custom_new_menu' );
    
  2. Если вы хотите добавить более одного нового местоположения в меню навигации, вам нужно будет использоватькод, подобный следующему:

    function wpb_custom_new_menu() {`enter code here`
      register_nav_menus(
        array(
          'my-custom-menu' => __( 'My Custom Menu' ),
          'extra-menu' => __( 'Extra Menu' )
        )
      );
    }
    add_action( 'init', 'wpb_custom_new_menu' );
    
  3. Отображение пользовательских меню навигации в темах WordPress

    <?php
      wp_nav_menu( array( 
         'theme_location' => 'my-custom-menu', 
         'container_class' => 'custom-menu-class' ) ); 
    ?>
    
...