理想情况下,由于“Dashboard”子菜单对于作者来说已经不存在了,我只想用一个链接来替换它,该链接可以打开wp admin主页。
只需重新启用Dashboard>home即可。
[编辑]这是我现在拥有的。我知道这不是最好的方法,但我无法获得“add\\u menu\\u page”正确操作。我手动编辑了$菜单变量。
如果我找不到更好的方法,这将是一个解决方案。
add_action( \'admin_menu\', function (){
if ( !current_user_can( \'administrator\' ) ) {
global $menu;
$menu[0]=[
0 => \'Dashboard\',
1 => \'read\',
2 => \'index.php\',
3 => \'\',
4 => \'menu-top menu-top-first menu-icon-dashboard\',
5 => \'menu-dashboard\',
6 => \'dashicons-dashboard\',
];
}
});
SO网友:WebElaine
你需要调整的不是菜单,而是你的角色和能力。
默认情况下,WP Core作者的菜单中有“Dashboard”。没错,它们在Dashboard下没有子菜单,但单击Dashboard会将它们带到与其他用户的“Dashboard”>“Home”相同的页面。
您可能希望查看您正在使用的任何可能具有调整权限的插件,和/或使用用户角色插件检查用户具有哪些权限。如果他们根本看不到“仪表板”,则需要添加“读取”功能:
// hook to admin init
add_action(\'admin_init\', \'add_author_caps\');
function add_author_caps() {
// get the author role
$role = get_role(\'author\');
// add "read" capability
$role->add_cap(\'read\');
}
您可以在任何您喜欢的地方临时添加此代码-主题或插件-并且在您登录并在wp admin中查看任何内容后,您可以删除此代码,因为wp将保存此功能。