我已从管理侧栏中删除了“外观”菜单:
function clean_menu() {
remove_menu_page( \'themes.php\' );
}
add_action(\'admin_menu\',\'clean_menu\');
然后,我添加了
nav-menu.php
在侧栏中手动作为父级:
function menu_reorder($menu_ord) {
if (!$menu_ord) return true;
return array(
...,
\'nav-menus.php\',
...
);
}
add_filter(\'custom_menu_order\', \'menu_reorder\');
add_filter(\'menu_order\', \'menu_reorder\');
作为管理员,它工作得很好,但当我以编辑身份登录时,我
not authorized 转到
nav-menu.php
, 虽然我已经启用了所需的功能:
function manage_users() {
if ( get_option( \'add_cap_editor_once\' ) != \'done\' ) {
$edit_editor = get_role(\'editor\');
$edit_editor->add_cap(\'edit_themes\');
$edit_editor->add_cap(\'edit_theme_options\');
update_option( \'add_cap_editor_once\', \'done\' );
}
}
add_action( \'init\', \'manage_users\' );
你知道为什么这不起作用吗??
最合适的回答,由SO网友:jDelforge 整理而成
好的,现在我明白了:
由于之前的操作,出现了一些错误。
add_cap
是modifying the database, 因此,不知何故,我写了其他功能,它打破了预期的结果。
所以我用了一些remove_cap
, 把我的函数放回去,瞧!