Solution:
You can use admin_init hook for remove menu :
add_action('admin_init','remove_admin_menu_links');
function remove_admin_menu_links (){
$user = wp_get_current_user();
if( $user && isset($user->user_email) && 'name@domain.com' == $user->user_email ) {
remove_menu_page('index.php'); // WordPress Dashoboard
remove_menu_page('edit.php?post_type=shop_order.php'); // WooCommerce
remove_menu_page('admin.php?page=vc-welcome'); // Visual Composer
}
}
For debug under this function add following line
function remove_admin_menu_links (){
$user = wp_get_current_user();
if( $user && isset($user->user_email) && 'name@domain.com' == $user->user_email ) {
echo '<pre>';
print_r($_GLOBALS['menu']);
}
}
By using above code you will see list of all all menu. Thanks