管理编辑器的自定义菜单?

时间:2011-02-03 作者:keatch

我对许可有问题。是否有特定权限允许具有编辑器角色的用户管理主题的自定义菜单,并且仅允许此选项

要清除的“外观->菜单”下的项目。

我正在使用功能插件。我必须编写一个自定义钩子来只启用自定义菜单编辑器吗?

TIA公司

编辑:我编写了一个简单的解决方案。请看下面我的答案!

2 个回复
最合适的回答,由SO网友:prettyboymp 整理而成

您需要为编辑器角色授予“edit\\u theme\\u options”权限,但这也会为这些用户解锁其他主题选项,如小部件。

SO网友:keatch

好的,我找到了一种方法,使用admin\\u菜单操作。我在这里发帖,以防有人需要。

此代码删除特定用户的所有子菜单项,但外观菜单中的自定义菜单项除外。

add_action(\'admin_menu\', \'enable_only_custom_menu\');

function enable_only_custom_menu() {
    global $menu,$submenu;
    global $current_user;
    get_currentuserinfo();

    if ($current_user->user_login == \'username\') {
        foreach($submenu[\'themes.php\'] as $key=>$smenu) {
            if ($smenu[2] != \'nav-menus.php\') {
                unset($submenu[\'themes.php\'][$key]);
            }
        }
    }
}
您必须迭代键“主题”的子菜单。php’并删除所有不适合您的项目。

结束

相关推荐

Menu API not switching menus?

我正在使用菜单API,我想切换到其他菜单,但出于某种原因,它保留了第一个菜单这是我的密码在函数中。php add_action( \'init\', \'register_my_menus\',10 ); function register_my_menus() { register_nav_menu(\'main-navigation\', \'Main Navigation\'); } 下面是我的主题文件(header.ph