首先,尽你所能see in the documentation, 功能
<?php
// is deprecated
get_currentuserinfo();
已弃用。因此,您不应该使用它来构建新项目。
此外,您没有为函数get\\u currentuserinfo声明变量,这意味着该函数的结果在空中某处浮动,而不是声明为变量。
您应该尝试:
<?php
function hide_menu_items() {
$user = wp_get_current_user();
if(current_user_can(\'editor\')) {
//The user has the "editor" role
remove_menu_page( \'edit.php?post_type=page\' );
}
}
add_action( \'admin_menu\', \'hide_menu_items\' );
?>
我已经测试了上述代码,它可以正常工作(从管理菜单中删除“页面”)。您必须根据需要调整remove\\u menu\\u page函数的url。
<?php
// can check for capability and role
current_user_can(\'something\');
?>
通常需要一个功能(例如“edit\\u posts”),但也可以接受“editor”或自定义角色等角色。