0

我正在尝试将我的静态导航菜单转换为 WP 动态导航。

这就是我所拥有的:

     <nav>
         <ul id="menu">

            <?php 


                $pages = array( 'index.php' => 'Home', 'services.php' => 'Services', 'sitemap.php' => 'Calculators', 'about.php' => 'About'
                , 'contact.php' => 'Contact' );

                $query = $_SERVER['PHP_SELF'];
                    $path = pathinfo( $query );
                    $selected = $path['basename'];

                foreach( $pages as $url => $title ) {
                   $li = '<li ';
                   if( $url === 'index.php' ) {
                       $li .= 'class="alpha"';
                   } else if ( $url === 'contact.php' ){
                       $li .= 'class="omega"';
                   }

                   if( $selected == $url ) {
                       $li .= 'id="menu_active"';
                   }
                   $li .= '><a href="' . $url . '"><span><span>' . $title . '</span></span></a></li>';
                   echo $li;
                }
            ?>

        </ul>
    </nav>

但我读过我需要使用这个?

                    <?php wp_nav_menu( array( 
                        'theme_location' => 'primary',
                        'container' => false,
                        'menu_class' => 'menu'
                    ) ); ?>

我真的不明白,也不知道如何实现?有任何想法吗?我真的被困住了,所以非常需要和感激帮助。谢谢。

4

3 回答 3

3
// register this menu to function.php<br>
register_nav_menu( 'top', __( 'Top Menu', 'themify' ) );

现在生成新菜单Appearance -> Menus并将这个新菜单添加为顶部菜单。

//call menu to header.php<br>
<div class="top-header">

    if (has_nav_menu('top')) {<br>
      wp_nav_menu( array('theme_location' => 'top' ) );<br>
     }

</div>
于 2016-04-11T09:56:45.740 回答
0
            <?php
            $defaults = array(
                'theme_location'  => '',
                'menu'            => '',
                'container'       => false,
                'container_class' => '',
                'container_id'    => '',
                'menu_class'      => 'menu',
                'menu_id'         => '',
                'echo'            => true,
                'fallback_cb'     => 'wp_page_menu',
                'before'          => '',
                'after'           => '',
                'link_before'     => '',
                'link_after'      => '',
                'items_wrap'      => '<ul id="%1$s" class="%2$s">%3$s</ul>',
                'depth'           => 2,
                'walker'          => ''
                );
            wp_nav_menu( $defaults );
            ?>

尝试这个。这将使用您在 Wordpress 中设置的默认菜单。您也可以指定非默认菜单的菜单名称。这会将菜单项包装在<ul></ul>标签中。

于 2013-11-05T03:34:38.390 回答
0

你可以试试这个:

wp_nav_menu( array( 'container' => 'ul', 'menu_class' => 'menu', 'depth' => 2,'theme_location' => 'primary' ));

并且还在functions.php中编写如下代码:

if ( ! function_exists( 'nav_setup' ) ):
function nav_setup() {

// This theme uses wp_nav_menu() in one location.
register_nav_menus( array(
    'primary' => __( 'Primary Navigation', 'StreetCoder' ),
) );

}

尝试使用萤火虫,您会在 li 标签中找到一些类,即单击子项后在父项中current-menu-item,在子项中,在子项中等。将您的 css 属性转移到这些类中。sub-menuli ul licurrent-menu-parentlicurrent-menu-ancestor

此外,如果您想为特定的 li 包含特定的类,请转到Appearance>menus,您会在右上角找到一个选项,即“屏幕选项”,点击那里。面板将被展开,然后选中“显示高级菜单属性”下的“CSS 类”选项。现在,从右侧面板展开菜单后,您将找到一个输入字段“CSS 类(可选)”。只需将您的特定课程放在那里即可。控制板。

菜单面板

我希望这是与菜单一起工作的一切。:)

于 2013-11-05T04:42:39.960 回答