Php 必须调用Wp nav菜单两次才能正常工作?

Php 必须调用Wp nav菜单两次才能正常工作?,php,wordpress,Php,Wordpress,我有下面的代码。错误似乎是当我取出wp_nav_菜单的第一块代码时,html会被弄乱。但如果我像下面的代码那样保留它,它将创建两个相同的functon调用,这是多余的。有人能帮忙吗?多谢各位 <body <?php body_class(); ?>> <?php wp_body_open(); ?> <div id="page" class="site" style="display: f

我有下面的代码。错误似乎是当我取出wp_nav_菜单的第一块代码时,html会被弄乱。但如果我像下面的代码那样保留它,它将创建两个相同的functon调用,这是多余的。有人能帮忙吗?多谢各位

<body <?php body_class(); ?>>
    <?php wp_body_open(); ?>
    <div id="page" class="site" style="display: flex; flex-direction:column; min-height:100vh">
        <a class="skip-link screen-reader-text" href="#primary"><?php esc_html_e('Skip to content', 'sdsd'); ?></a>
        <?php
        wp_nav_menu(
            [
                'theme_location' => 'menu-1',
                'menu_id'        => 'primary-menu',
            ]
        );
        ?>
        <header class="header_area">
            <div class="main_header_area animated sticky">
                <div class="container">
                    <nav id="navigation1" class="navigation">
                        <div class="nav-header">
                            <!-- <a class="nav-brand" href="#"></a> -->
                            <a href="<?php echo home_url() ?>">
                                <div class="nav-logo">
                                    <?php
                                    $custom_logo_id = get_theme_mod('custom_logo');
                                    $logo = wp_get_attachment_image_src($custom_logo_id, 'full');
                                    if (has_custom_logo()) {
                                        echo '<img src="' . esc_url($logo[0]) . '" alt="' . get_bloginfo('name') . '">';
                                    } else {
                                        echo '<h1>' . get_bloginfo('name') . '</h1>';
                                    }
                                    ?>
                                </div>
                            </a>
                            <div class="nav-toggle"></div>
                        </div>
                        <div class="nav-search">
                            <div class="nav-search-button"><i class="nav-search-icon"></i></div>
                            <form role="search" method="get" action="<?php echo home_url() ?>">
                                <div class="nav-search-inner">
                                    <input type="search" name="s" placeholder="Search..." value="<?php get_search_query() ?>" />
                                </div>
                            </form>
                        </div>
                        <div class="nav-menus-wrapper">
                            <?php
                            wp_nav_menu([
                                'container' => "",
                                'theme_location' => 'menu-1',
                                'menu_id'        => 'primary-menu',
                                'menu_class' => 'nav-menu align-to-right',
                                'walker' => new My_Walker(),
                            ]);
                            ?>
                        </div>
                    </nav>
                </div>
            </div>
        </header>


创建菜单时不建议写两次函数。我在twenty-twenty主题上运行了相同的代码,效果很好


你可以截图或分享链接,以便更好地了解问题所在。

对于同舟共济的你,我发现了这一点,我意识到我的一个使用过滤器挂钩的函数wp\u nav\u菜单项有问题。请参阅此

Hi@asma\u dev,我已从此链接找到解决方案