给定一个 Drupal 7 网站,我想自定义登录行为:当用户登录时,我想检查他们是否在黑名单中。如果他们在该列表中,我希望他们自动注销并告知他们被踢出的原因。所以在这个drupal的一个自定义模块中,我添加了以下钩子:
function mymodule_user_login(&$edit, $account) {
if(blacklist(&$edit, $account)) {
drupal_goto("/user/logout/");
drupal_set_message('Acces denied','error');
}
}
但是,我的代码不起作用。我做错了什么?我确定钩子已执行,因为我使用看门狗检查了这一点。但是,我还发现只有当 admin 是登录用户时才会执行该钩子。
有没有其他选择(可能使用 Context 模块)?任何建议将不胜感激!
谢谢!