如何从特定用户的管理仪表板中删除/隐藏 WordPress 菜单

问题描述 投票:0回答:1

我用它来隐藏特定用户的菜单项。对于使用该 id 的多个用户来说,执行此操作的最佳方法是什么?

add_action( 'admin_init', 'remove_menu_pages_for_user' );
function remove_menu_pages_for_user() {

if (get_current_user_id() == 1) {
    //remove_menu_page( 'index.php' );              //Dashboard
    remove_menu_page( 'edit.php' );                 //Posts
    remove_menu_page( 'upload.php' );               //Media
    remove_menu_page( 'edit.php?post_type=page' );  //Pages
    remove_menu_page( 'edit-comments.php' );        //Comments
    remove_menu_page( 'themes.php' );               //Appearance
    remove_menu_page( 'plugins.php' );              //Plugins
    remove_menu_page( 'users.php' );                //Users
    remove_menu_page( 'tools.php' );                //Tools
    remove_menu_page( 'options-general.php' );      //Settings
}
}

此代码适用于用户 1,但需要添加一或 2 个额外用户。

wordpress
1个回答
0
投票

您可以通过获取当前用户 ID 来完成此操作,然后检查该用户是否存在于我们创建的数组中。

所以你只需要更换

if (get_current_user_id() == 1) {

 $user_ids = array( 1, 2, 3 ); //here you can replace 1,2,3 as per the User ID for which you want to remove menu.
 $current_user_id = get_current_user_id();
 if ( in_array( $current_user_id, $user_ids ) ) {

它应该适合你。

© www.soinside.com 2019 - 2024. All rights reserved.