在下面的代码中,我认为我搞砸了这一部分:if ( (1 || 2) != $current_user->ID )
。也许是一个错位的支架,我不确定。我不熟悉PHP,所以我确信这是一个简单的错误。
if ( (1 || 2) != $current_user->ID ) {
add_action('admin_menu', 'remove_menus_users');
}
如果有人可以帮助我,我会很感激。
答案 0 :(得分:2)
以下更正可以解决您的问题。
if ( 1 != $current_user->ID && 2 != $current_user->ID) {
add_action('admin_menu', 'remove_menus_users');
}
答案 1 :(得分:1)
if
归结为if ((true) != $current_user->ID )
。如果要为多个条件测试一个变量,请每次检查:
if (($current_user->ID == 1) || ($current_user->ID == 2)) ...
但你可能想看看角色。如果您的网站变得非常繁忙,并且您想要分配另一个用户管理员权限但他的ID为872,您要对此ID进行硬编码会怎样?
答案 2 :(得分:0)
试试这个
if($current_user->ID != 1 || $current_user->ID != 2){
add_action('admin_menu', 'remove_menus_users');
}
答案 3 :(得分:0)
你的逻辑是有缺陷的。你不能拥有“如果它不等于数字,或者它不等于不同的数字”,因为它总是不等于其中之一。
您还应该撤消比较顺序。将变量与数字匹配,而不是将数字与变量匹配以下假设您要确保当前用户ID不等于1或2.
if ($current_user->ID!=1 && $current_user->ID!=2) {
}