【问题标题】:about hook: What is the role of hook_*()关于hook:hook_*()的作用是什么
【发布时间】:2013-09-16 09:30:48
【问题描述】:

例如在用户模块中有一个hook_user_login钩子

当用户登录时会调用function user_login_finalize(),那么user_login_finalize会调用user_module_invoke('login', $edit, $user); 这将调用system_user_login(以及实现hook_user_login()的其他模块的函数[moudulename_user_login]);

我对@9​​87654328@ 将在哪个函数以及何时调用它感到困惑。这个函数的作用是什么?

【问题讨论】:

  • 转到文档页面以获取您想要了解的挂钩信息,单击折叠的“挂钩名称()的 x 调用”,您将看到调用它的函数。文档页面将解释钩子的用途,如果您在英语方面遇到困难,请咨询有更多经验的人来帮助您;由于显而易见的原因,我们无法在此处帮助您解决翻译问题

标签: drupal hook


【解决方案1】:

如您所述,user_login_finalize 将调用user_module_invoke('login', $edit, $user)

user_module_invoke 函数将查看函数的第一个参数(登录名),并根据该值调用hook_user_login() 函数。

一个模块实现 hook_user_login() 函数的主要目标是通知用户刚刚登录,因此它可以采取额外的行动:向数据库添加额外的信息,如果它在屏幕上写入一个特殊的消息用户是他/她的生日等...

【讨论】:

猜你喜欢
  • 2020-11-27
  • 1970-01-01
  • 2010-09-10
  • 2020-02-01
  • 2019-03-17
  • 2022-08-12
  • 2022-11-29
相关资源
最近更新 更多