【问题标题】:Adding dropdown menu on custom theme wordpress在自定义主题 wordpress 上添加下拉菜单
【发布时间】:2019-08-22 16:27:13
【问题描述】:

我正在尝试为我正在开发的主题创建一个下拉菜单,但子菜单项显示在父菜单项旁边。

我已将其保存为子菜单项

这就是我们的程序应该是关于我们的,现在它只是混乱

这就是我在functions.php中导航的内容

function register_my_menus() {
  register_nav_menus(
    array(
      'header-menu' => __( 'Header Menu' ),
      'extra-menu' => __( 'Extra Menu' )
    )
  );
}

add_action( 'init', 'register_my_menus' );

   $defaults = array(
    'default-image'          => '',
    'width'                  => 0,
    'height'                 => 0,
    'flex-height'            => false,
    'flex-width'             => false,
    'uploads'                => false,
    'random-default'         => false,
    'header-text'            => true,
    'default-text-color'     => '',
    'wp-head-callback'       => '',
    'admin-head-callback'    => '',
    'admin-preview-callback' => '',
);
add_theme_support( 'custom-header', $defaults );

在我的 header.php 中

<div id="menu">
    <ul>
        <li id="access"><?php wp_nav_menu( array( 'sort_column' => 'menu_order', 'container_class' => 'menu-header' ) ); ?></li>
    </ul>
</div>

我似乎无法在网上找到任何东西。任何帮助将不胜感激!

【问题讨论】:

    标签: php html css wordpress


    【解决方案1】:

    您需要向菜单添加不同的类。并为这些类应用适当的 CSS 位置(left: (n)px; top: (n)px;)。

    wp_nav_menu( array( 
      'sort_column' => 'menu_order', 
      'container_class' => 'menu-header',
      'menu_class' => 'custom_menu' //add class,
      'container' => 'div',
      'menu' => 'main-nav',
    ));
    

    希望对你有帮助:)

    【讨论】:

      【解决方案2】:

      您必须为菜单创建类,并且必须将这些类应用于菜单。您可以使用 walker 将几个条件类添加到您的菜单中。

      更多详情可以参考

      https://developer.wordpress.org/reference/functions/wp_nav_menu/

      wp_nav_menu( array( 
        'sort_column' => 'menu_order', 
        'container_class' => 'menu-header',
        'menu_class' => 'your_class' //you can add your class here,
        'container' => 'div',
        'menu' => 'main-nav',
        'theme_location'    => 'my-header-menu', // Select the menu name registered in functions.php
        'walker'            => "", // Instance of a custom walker class to add conditional classes into your nav menu
      ));
      

      【讨论】:

        【解决方案3】:

        将此代码添加到functions.php文件中

        add_action('wp_enqueue_scripts', 'buena_child_scripts');
        
        function register_flatlearn_menu(){
          //register menu
          register_nav_menus(
            array(
              'primary-menu' => __('Primary Menu'),
              'footer-menu' => __('Footer Menu')
              )
            );
          }
          //attach with action hook
          add_action("init","register_flatlearn_menu");
        

        在此代码之后,您在 header.php 文件中添加以下代码,如下所示:

        <nav>
          <?php
             wp_nav_menu(array(
               'sort_column' => 'menu_order',
               'menu-id' =>'primary-menu',
               'depth' => 0,
               'container' =>'false' ,
               'menu_class' => 'nav topnav',
             ));
          ?>
        </nav>
        

        【讨论】:

          猜你喜欢
          • 2023-03-04
          • 2016-04-11
          • 1970-01-01
          • 2012-10-12
          • 2023-01-21
          • 2017-07-18
          • 1970-01-01
          • 2021-01-11
          相关资源
          最近更新 更多