我必须在drupal中设置2个不同的角色。
1)后端用户 2)验证用户
后端用户 我希望将后端用户重定向到管理部分(所有与管理员相关的工作都已完成)
验证用户 验证用户是否被重定向到首页。
实现这一目标的最佳方式是什么。
答案 0 :(得分:4)
您有多个选择。
有几个可以实现此功能的contrib模块。在我的一个生产站点上,我满意地使用login destination,因为它允许包含PHP逻辑来决定重定向用户的位置。
但是,如果您已经编写了一些代码,则可以通过实现hook_user()
并为{{定义一个案例 - 以编程方式实现此行为(这在系统上肯定比完全特色的模块更轻) 1}}:然后您可以使用drupal_goto()
根据自己/他的角色提供您希望用户重定向的页面地址。
HTH!
答案 1 :(得分:0)
尝试“LoginToboggan”模块。它是一个内置了该功能的模块。有关它的一些细节(来自其项目页面):
LoginToboggan模块通过提供以下功能和可用性改进,在外部模块中对Drupal登录系统进行了多次修改:
- 允许用户使用其用户名或电子邮件地址登录。
- 允许用户立即登录。
- 在“拒绝访问”页面上为未登录(匿名)用户提供登录表单。
- 该模块提供了两个登录块选项:一个使用JavaScript在单击“登录”后立即显示块中的表单。另一个将用户带到一个单独的页面,但在登录时将用户返回到原始页面。
- 使用两个电子邮件字段自定义注册表单以确保准确性。
- 使用“立即登录”功能时,可以选择将用户重定向到特定页面。
- 可选择在验证其电子邮件地址后将用户重定向到特定页面。
- (可选)显示表示登录成功的用户消息。
- 可选择将登录和注册表单合并到一个页面上。
- 可选择以预定义的时间间隔从系统中清除未经验证的用户(请阅读INSTALL.txt的CAVEATS部分,了解有关配置此功能的重要信息!)。
- 当用户通过电子邮件验证过程验证时,与规则模块集成以执行各种任务(请参阅http://drupal.org/node/880904示例)