注册后外观不可见的菜单

时间:2017-01-06 作者:mixchex

菜单已在中注册functions.php, 但它们不会出现在管理中的“外观”>“菜单”部分,页面、帖子等选项也会变灰。

菜单已保存,因为您无法再次创建同名菜单。

Greyed out Menu options

在内部functions.php:

function theme_setup() {
    add_theme_support( \'automatic-feed-links\' );
    add_theme_support( \'post-thumbnails\' );
    add_theme_support( \'html5\', array( \'search-form\' ) );
    /*** Register Menus */
    if (function_exists(\'register_nav_menus\'))
    {
        register_nav_menus(
        array(
            \'main-menu\'         => __( \'Main Menu\', \'site\' ),
            \'footer-menu\'       => __( \'Footer Menu\', \'site\' ),
            )
        );
    }
}
add_action(\'after_setup_theme\', \'theme_setup\');
header.php

wp_nav_menu(
                array(
                    \'menu\'          => \'Main Menu\',
                    \'container\'     => \'\',
                    \'depth\'         => 1,
                    \'theme_location\' => \'main-menu\',
                )
            );
footer.php

wp_nav_menu(
                array(
                    \'menu\'          => \'Footer Menu\',
                    \'container\'     => \'\',
                    \'items_wrap\'    => \'\',
                    \'theme_location\' => \'footer-menu\'
                )
            );
这里的主要问题是,这些菜单存在并在站点上呈现,但它们似乎隐藏在管理面板中,如果创建了新菜单,它将永远不会显示。

使用Wordpress版本4.7(最新)

插件:Current plugins

这可能是什么原因造成的?

2 个回复
SO网友:nyedidikeke

你的theme_setup() 在您的functions.php 文件

您得到的错误只是指出了一个事实,即菜单名Main Menu 已存在。

在其他情况下,要解决此问题,应在functions.php 与当前文件不同的文件。

您可能正在使用一个主题或插件,该主题或插件已经注册了一个菜单名,从而导致当前的菜单名冲突

更新:

您的代码运行良好。我认为您的挑战与注册菜单位置有关vs 实际菜单(形成仪表板,作为要渲染到给定注册菜单位置的实际菜单)。

你应该做的是:在“菜单名”输入框中键入一个新的菜单名,然后单击“创建菜单”按钮;您的自定义注册菜单位置将显示在下面的屏幕截图中:

Newly created menu (stacktest)

SO网友:mixchex

更新时间:

该问题是由WPCoreSys插件引起的。不确定其目的。

插件中的某些内容发生冲突,导致菜单编辑器无法工作。

插件在插件部分中不可见,但它存在于文件目录中。由于它未处于活动状态,因此被删除,现在菜单区域的功能与预期一致。